/* =============================================================
   Imbas v1 — Design System
   Frontier observatory. Dark but illuminated. Slate-lift mineral.
   Living signal field. Conversion-aware homepage hierarchy.
   build: 2026-05-27 · iteration 6 · communication-rebuild
   ============================================================= */

:root {
  /* Surfaces — warm foundation; cool navy on lifted panels for temperature contrast */
  --bg-deep:        #0F0D0B;
  --bg-base:        #1B1814;
  --bg-surface:     #101A2A;
  --bg-elevated:    #172438;
  --bg-lift:        #22304A;
  --bg-bloom:       #2A3A56;
  --bg-glass:       rgba(23, 36, 56, 0.58);
  --bg-deep-rgb:    15, 13, 11;
  --bg-base-rgb:    27, 24, 20;
  --bg-surface-rgb: 16, 26, 42;
  --bg-elevated-rgb: 23, 36, 56;
  --section-aurora-fade: 14%;
  --edge-bleed: 72px;

  /* Text — warm off-light on base; cool-muted secondary for navy panels */
  --ink-luminous:   #FCF8EC;
  --ink-primary:    #EDE8DC;
  --ink-soft:       #D4CFC2;
  --ink-secondary:  #94A0B4;
  --ink-muted:      #6E7688;
  --ink-faint:      #4A5568;
  --ink-ghost:      #2E3848;

  /* Lines — parchment tint on warm ground */
  --line-faint:     rgba(237, 228, 210, 0.09);
  --line-soft:      rgba(237, 228, 210, 0.15);
  --line-strong:    rgba(237, 228, 210, 0.24);
  --line-luminous:  rgba(252, 248, 236, 0.38);

  /* Ember — saturated signal; stronger presence against cool panels */
  --ember:          #DE6F38;
  --ember-soft:     #F08F58;
  --ember-bright:   #F8A866;
  --ember-glow:     rgba(222, 111, 56, 0.30);
  --ember-trace:    rgba(222, 111, 56, 0.14);
  --ember-pulse:    rgba(248, 168, 102, 0.62);
  --ember-bloom:    rgba(240, 143, 88, 0.36);
  --ember-rgb:      222, 111, 56;

  /* Cool atmospheric — moonlit slate on warm base; navy panels read colder */
  --slate-glow:     rgba(110, 150, 195, 0.18);
  --slate-deeper:   rgba(110, 150, 195, 0.11);
  --slate-haze:     rgba(130, 168, 210, 0.09);
  --slate-bloom:    rgba(155, 188, 228, 0.20);
  --aurora-a:       rgba(90, 130, 175, 0.09);
  --aurora-b:       rgba(120, 175, 205, 0.07);
  --aurora-c:       rgba(222, 111, 56, 0.08);

  /* Cursor presence */
  --cx: 0.5;
  --cy: 0.5;
  --cursor-prox: 0;

  /* Type */
  --font-display:   "Fraunces", Georgia, "Times New Roman", serif;
  --font-body:      "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
  --font-mono:      "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

  --container-wide: 1240px;
  --container-mid:  920px;
  --reading:        640px;

  --space-1: 0.5rem; --space-2: 1rem; --space-3: 1.5rem;
  --space-4: 2rem;   --space-5: 3rem; --space-6: 4.5rem;
  --space-7: 6rem;   --space-8: 8rem; --space-9: 11rem;

  /* Legibility floors */
  --text-min-desktop: 14px;
  --text-min-mobile:  13px;
  --mono-min:         13px;
  --text-min-opacity: 0.65;
  --mono-min-opacity: 0.7;
  --text-min:         var(--text-min-desktop);
}

@media (max-width: 680px) {
  :root { --text-min: var(--text-min-mobile); }
}

* { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

body {
  margin: 0;
  background: var(--bg-base);
  color: var(--ink-primary);
  font-family: var(--font-body);
  font-size: 18px;
  line-height: 1.6;
  font-weight: 400;
  overflow-x: hidden;
  position: relative;
  background-image:
    radial-gradient(1200px 800px at 78% -10%, var(--slate-glow), transparent 60%),
    radial-gradient(900px 600px at 12% 110%, var(--ember-trace), transparent 65%);
  background-attachment: fixed;
}

img, svg { display: block; max-width: 100%; }
::selection { background: var(--ember-glow); color: var(--ink-luminous); }

main {
  min-width: 0;
  overflow-x: clip;
}

/* =============================================================
   AURORA — soft moving signal field behind everything
   Three large blurred bands shift slowly. Edge of perception.
   ============================================================= */
.field-noise {
  position: fixed;
  inset: -10%;
  pointer-events: none;
  z-index: 0;
}
.field-noise::before,
.field-noise::after {
  content: "";
  position: absolute;
  inset: 0;
  filter: blur(120px);
  opacity: 0.42;
}
.field-noise::before {
  background:
    radial-gradient(55vw 55vw at 14% 28%, var(--aurora-a), transparent 68%),
    radial-gradient(48vw 48vw at 86% 74%, var(--aurora-b), transparent 68%);
  animation: aurora-a 220s ease-in-out infinite alternate;
}
.field-noise::after {
  background:
    radial-gradient(40vw 40vw at 72% 16%, var(--aurora-c), transparent 72%),
    radial-gradient(50vw 50vw at 18% 84%, var(--aurora-b), transparent 72%);
  animation: aurora-b 280s ease-in-out infinite alternate;
}
@keyframes aurora-a {
  0%   { transform: translate(0, 0) scale(1); }
  100% { transform: translate(2vw, -1vh) scale(1.03); }
}
@keyframes aurora-b {
  0%   { transform: translate(0, 0) scale(1); }
  100% { transform: translate(-1.5vw, 1.5vh) scale(1.02); }
}

/* Pass 12 — film grain overlay (above bg, below content) */
.film-grain {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  opacity: 0.07;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E");
  background-size: 200px 200px;
  animation: film-grain-drift 8s steps(8) infinite;
}
@keyframes film-grain-drift {
  0%   { background-position: 0 0; }
  100% { background-position: 200px 200px; }
}
@media (max-width: 900px) {
  .film-grain { animation: none; }
}

/* Pass 12 — scroll-linked aurora intensity per section */
.section-scene {
  --scene-aurora: 0.7;
}
.section-scene.is-aurora-settle {
  --scene-aurora: 0.85;
}
.section-scene.is-aurora-peak {
  --scene-aurora: 1;
}
.section-scene > .aurora-field,
.section-scene > .hero__aurora-focal {
  opacity: var(--scene-aurora);
  transition: opacity 1.2s ease;
}
.section-scene.bridge::before {
  opacity: calc(var(--scene-aurora) / 0.7);
  transition: opacity 1.2s ease;
}
.section-scene.gap::before {
  opacity: calc(0.3 * var(--scene-aurora) / 0.7);
  transition: opacity 1.2s ease;
}
.section-scene.categories::before {
  opacity: calc(var(--scene-aurora) / 0.7);
  transition: opacity 1.2s ease;
}
.section-scene.compounding::before {
  opacity: calc(0.48 * var(--scene-aurora) / 0.7);
  transition: opacity 1.2s ease;
}
.section-scene.value::before {
  opacity: calc(var(--scene-aurora) / 0.7);
  transition: opacity 1.2s ease;
}
.section-scene.roadmap::before {
  opacity: calc(0.75 * var(--scene-aurora) / 0.7);
  transition: opacity 1.2s ease;
}
.section-scene.audiences::before {
  opacity: calc(0.45 * var(--scene-aurora) / 0.7);
  transition: opacity 1.2s ease;
}
.section-scene.close::before {
  opacity: calc(0.65 * var(--scene-aurora) / 0.7);
  transition: opacity 1.2s ease;
}

/* =============================================================
   PASS 9 — AURORA FIELD: independent drifting light layers
   ============================================================= */
.aurora-field {
  position: absolute;
  inset: -8%;
  pointer-events: none;
  z-index: 0;
  overflow: hidden;
  isolation: isolate;
}
.aurora-field__layer {
  position: absolute;
  width: 72%;
  height: 72%;
  border-radius: 50%;
  filter: blur(52px);
  will-change: transform, opacity;
  opacity: 0.55;
}
.aurora-field__layer--a { top: -8%;  left: -6%;  }
.aurora-field__layer--b { top: 18%;  right: -10%; width: 64%; height: 64%; }
.aurora-field__layer--c { bottom: -12%; left: 22%; width: 58%; height: 58%; filter: blur(64px); }

/* Warm sections — hero, close */
.aurora-field--warm .aurora-field__layer--a {
  background: radial-gradient(circle, rgba(var(--ember-rgb), 0.42) 0%, transparent 68%);
  animation:
    aurora-orbit-a 45s ease-in-out infinite,
    aurora-breathe-a 67s ease-in-out infinite alternate,
    aurora-hue-warm 78s ease-in-out infinite alternate;
}
.aurora-field--warm .aurora-field__layer--b {
  background: radial-gradient(circle, rgba(240, 143, 88, 0.28) 0%, transparent 70%);
  animation:
    aurora-orbit-b 67s ease-in-out infinite,
    aurora-breathe-b 89s ease-in-out infinite alternate,
    aurora-hue-warm 84s ease-in-out infinite alternate-reverse;
}
.aurora-field--warm .aurora-field__layer--c {
  background: radial-gradient(circle, rgba(200, 88, 48, 0.22) 0%, transparent 72%);
  animation:
    aurora-orbit-c 89s ease-in-out infinite,
    aurora-breathe-c 54s ease-in-out infinite alternate,
    aurora-hue-warm 72s ease-in-out infinite;
}

/* Cool sections — gap, thesis, archive */
.aurora-field--cool .aurora-field__layer--a {
  background: radial-gradient(circle, rgba(110, 150, 195, 0.22) 0%, transparent 68%);
  animation: aurora-orbit-a 52s ease-in-out infinite, aurora-breathe-a 71s ease-in-out infinite alternate;
}
.aurora-field--cool .aurora-field__layer--b {
  background: radial-gradient(circle, rgba(130, 168, 210, 0.16) 0%, transparent 70%);
  animation: aurora-orbit-b 73s ease-in-out infinite, aurora-breathe-b 61s ease-in-out infinite alternate;
}
.aurora-field--cool .aurora-field__layer--c {
  background: radial-gradient(circle, rgba(90, 120, 165, 0.14) 0%, transparent 72%);
  animation: aurora-orbit-c 84s ease-in-out infinite, aurora-breathe-c 79s ease-in-out infinite alternate;
}

@keyframes aurora-orbit-a {
  0%   { transform: translate(-6%, -4%) scale(1); }
  33%  { transform: translate(8%, 5%) scale(1.06); }
  66%  { transform: translate(-2%, 9%) scale(0.96); }
  100% { transform: translate(-6%, -4%) scale(1); }
}
@keyframes aurora-orbit-b {
  0%   { transform: translate(4%, 6%) scale(1.02); }
  40%  { transform: translate(-7%, -3%) scale(0.94); }
  70%  { transform: translate(5%, -8%) scale(1.08); }
  100% { transform: translate(4%, 6%) scale(1.02); }
}
@keyframes aurora-orbit-c {
  0%   { transform: translate(0%, 4%) scale(0.98); }
  50%  { transform: translate(-9%, -6%) scale(1.05); }
  100% { transform: translate(0%, 4%) scale(0.98); }
}
@keyframes aurora-breathe-a {
  0%, 100% { opacity: 0.42; filter: blur(52px); }
  50%      { opacity: 0.72; filter: blur(58px); }
}
@keyframes aurora-breathe-b {
  0%, 100% { opacity: 0.38; filter: blur(48px); }
  50%      { opacity: 0.65; filter: blur(56px); }
}
@keyframes aurora-breathe-c {
  0%, 100% { opacity: 0.4; filter: blur(64px); }
  50%      { opacity: 0.68; filter: blur(70px); }
}
@keyframes aurora-hue-warm {
  0%   { filter: blur(52px) hue-rotate(0deg); }
  50%  { filter: blur(58px) hue-rotate(14deg); }
  100% { filter: blur(54px) hue-rotate(-8deg); }
}

.hero .aurora-field {
  z-index: 0;
}
.hero .aurora-field__layer { opacity: 0.72; }
.hero .aurora-field__layer--c,
.hero .aurora-field__layer--d,
.hero .aurora-field__layer--cool {
  display: none;
}
.hero .aurora-field__layer--a {
  top: 22%;
  left: 50%;
  width: min(940px, 92vw);
  height: min(640px, 72vh);
  margin-left: calc(min(940px, 92vw) / -2);
  background:
    radial-gradient(ellipse 58% 54% at 50% 50%,
      rgba(var(--ember-rgb), 0.32) 0%,
      rgba(var(--ember-rgb), 0.12) 42%,
      transparent 72%),
    radial-gradient(ellipse 78% 30% at 50% 94%,
      rgba(var(--ember-rgb), 0.09) 0%,
      transparent 64%);
  filter: blur(74px);
  opacity: 0.88;
  animation: aurora-drift-primary 85s ease-in-out infinite alternate;
}
.hero .aurora-field__layer--b {
  top: 2%;
  left: 6%;
  width: min(68vw, 760px);
  height: min(46vh, 400px);
  background: radial-gradient(ellipse 58% 50% at 44% 40%,
    rgba(105, 135, 178, 0.2) 0%,
    rgba(90, 120, 165, 0.08) 46%,
    transparent 72%);
  filter: blur(86px);
  opacity: 0.52;
  animation: aurora-drift-counter 95s ease-in-out infinite alternate;
}
@keyframes aurora-drift-primary {
  0%   { transform: translate(-2%, 0) scale(1); opacity: 0.88; }
  50%  { transform: translate(-10%, 3%) scale(1.06); opacity: 0.94; }
  100% { transform: translate(4%, -2%) scale(1.03); opacity: 0.86; }
}
@keyframes aurora-drift-counter {
  0%   { transform: translate(0, 0) scale(1); opacity: 0.46; }
  100% { transform: translate(4%, 6%) scale(1.05); opacity: 0.58; }
}
.hero__aurora-focal {
  position: absolute;
  z-index: 1;
  pointer-events: none;
  width: min(72vw, 860px);
  height: min(46vh, 420px);
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background: radial-gradient(ellipse 76% 66% at 50% 48%, rgba(var(--ember-rgb), 0.38) 0%, rgba(var(--ember-rgb), 0.08) 52%, transparent 78%);
  filter: blur(68px);
  opacity: 0.48;
  mask-image: linear-gradient(180deg, rgba(0,0,0,0.35) 0%, black 20%, black 78%, rgba(0,0,0,0.45) 100%);
}
.hero__aurora-edge {
  position: absolute;
  z-index: 1;
  pointer-events: none;
  inset: 0;
  background:
    radial-gradient(ellipse 46% 36% at 10% 16%, rgba(90, 130, 175, 0.3) 0%, transparent 72%),
    radial-gradient(ellipse 42% 32% at 48% 10%, rgba(90, 130, 175, 0.16) 0%, transparent 68%),
    radial-gradient(ellipse 34% 28% at 88% 14%, rgba(90, 130, 175, 0.22) 0%, transparent 72%);
  filter: blur(64px);
  opacity: 0.62;
  animation: hero-aurora-edge-drift 78s ease-in-out infinite alternate;
}
@keyframes hero-aurora-edge-drift {
  0%   { transform: translate(0, 0) scale(1); opacity: 0.58; }
  100% { transform: translate(-2%, 1.5%) scale(1.05); opacity: 0.78; }
}

/* Pass 15.2 — section auroras: dual-source, slow drift (max two layers) */
.bridge .aurora-field__layer,
.gap .aurora-field__layer,
.compounding .aurora-field__layer,
.archive .aurora-field__layer,
.close .aurora-field__layer {
  animation: none;
}
.bridge .aurora-field__layer--a,
.close .aurora-field__layer--a {
  top: 10%;
  left: 8%;
  width: 78%;
  height: 72%;
  filter: blur(72px);
  opacity: 0.72;
  background: radial-gradient(ellipse 58% 52% at 50% 50%,
    rgba(var(--ember-rgb), 0.28) 0%,
    rgba(var(--ember-rgb), 0.1) 42%,
    transparent 72%);
  animation: aurora-drift-primary 160s ease-in-out infinite alternate;
}
.bridge .aurora-field__layer--b,
.close .aurora-field__layer--b {
  top: 28%;
  right: -6%;
  width: 52%;
  height: 52%;
  filter: blur(80px);
  opacity: 0.48;
  background: radial-gradient(ellipse 55% 48% at 50% 50%,
    rgba(120, 140, 180, 0.14) 0%,
    transparent 68%);
  animation: aurora-drift-counter 200s ease-in-out infinite alternate;
}
.gap .aurora-field__layer--a,
.compounding .aurora-field__layer--a,
.archive .aurora-field__layer--a {
  top: 6%;
  left: 10%;
  width: 74%;
  height: 68%;
  filter: blur(68px);
  opacity: 0.58;
  background: radial-gradient(ellipse 58% 52% at 50% 50%,
    rgba(110, 150, 195, 0.22) 0%,
    rgba(90, 130, 175, 0.08) 45%,
    transparent 72%);
  animation: aurora-drift-primary 150s ease-in-out infinite alternate;
}
.gap .aurora-field__layer--b,
.compounding .aurora-field__layer--b,
.archive .aurora-field__layer--b {
  top: 32%;
  right: -8%;
  width: 50%;
  height: 50%;
  filter: blur(76px);
  opacity: 0.42;
  background: radial-gradient(ellipse 52% 46% at 50% 50%,
    rgba(130, 168, 210, 0.14) 0%,
    transparent 70%);
  animation: aurora-drift-counter 180s ease-in-out infinite alternate;
}

.hero__dust {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  overflow: hidden;
  mask-image: radial-gradient(ellipse 85% 78% at 50% 62%, black 38%, transparent 94%);
}
.hero__particle {
  position: absolute;
  left: var(--px);
  top: var(--py);
  width: 2px;
  height: 2px;
  border-radius: 50%;
  background: var(--ember);
  opacity: 0;
  box-shadow: 0 0 5px rgba(var(--ember-rgb), 0.42);
  animation: hero-particle-drift var(--dur, 90s) linear infinite;
  animation-delay: var(--pd, 0s);
}
@keyframes hero-particle-drift {
  0%, 100% { opacity: 0; transform: translate(0, 0); }
  12%      { opacity: 0.44; }
  50%      { opacity: 0.34; transform: translate(var(--drift-x, 12px), var(--drift-y, -8px)); }
  88%      { opacity: 0.22; }
}

@media (max-width: 900px) {
  .section-scene:not(.hero) > .aurora-field .aurora-field__layer {
    animation: none !important;
    opacity: 0.38 !important;
    filter: blur(44px) !important;
    transform: none !important;
  }
  .hero .aurora-field__layer {
    filter: blur(64px) !important;
  }
  .hero__dust { display: none !important; }
  .hero__aurora-focal {
    display: block !important;
    filter: blur(60px) !important;
  }
  .divergence.is-live .divergence__origin-core,
  .divergence.is-live .divergence__endpoint--bot,
  .hero__monolith-text::after { animation: none !important; }
}

/* Typography */
h1, h2, h3, h4 {
  font-family: var(--font-display);
  font-weight: 450;
  letter-spacing: -0.014em;
  color: var(--ink-primary);
  margin: 0;
}
h1 { font-size: clamp(2rem, 3.4vw, 2.9rem); line-height: 1.08; font-weight: 400; }
h2 { font-size: clamp(2rem, 3.4vw, 2.75rem); line-height: 1.1; }
h3 { font-size: 1.5rem; line-height: 1.25; font-weight: 500; }
p { margin: 0 0 1.1em; color: var(--ink-soft); }
p:last-child { margin-bottom: 0; }

a {
  color: var(--ink-primary);
  text-decoration: none;
  border-bottom: 1px solid var(--line-soft);
  padding-bottom: 1px;
  transition: color .25s ease, border-color .25s ease;
}
a:hover { color: var(--ember-soft); border-bottom-color: var(--ember); }

.mono {
  font-family: var(--font-mono);
  font-size: 0.74rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.95);
}

.wrap        { width: 100%; max-width: var(--container-wide); margin: 0 auto; padding: 0 clamp(1.25rem, 4vw, 3rem); }
.wrap-mid    { width: 100%; max-width: var(--container-mid);  margin: 0 auto; padding: 0 clamp(1.25rem, 4vw, 3rem); }
.wrap-read   { width: 100%; max-width: var(--reading);        margin: 0 auto; padding: 0 clamp(1.25rem, 4vw, 3rem); }

.section-label {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  font-family: var(--font-mono);
  font-size: 0.875rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.95);
  margin-bottom: var(--space-3);
}
.section-label::before {
  content: ""; width: 22px; height: 1px;
  background: var(--line-strong); display: inline-block;
}
.section-label--named::before {
  content: "// ";
  width: auto;
  height: auto;
  background: none;
  color: rgba(180, 192, 210, 0.92);
  letter-spacing: 0.2em;
}
.section-label--named {
  gap: 0.35rem;
}

/* =============================================================
   HEADER
   ============================================================= */
.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  backdrop-filter: blur(16px) saturate(120%);
  -webkit-backdrop-filter: blur(16px) saturate(120%);
  background: linear-gradient(180deg, rgba(var(--bg-deep-rgb), 0.86), rgba(var(--bg-deep-rgb), 0.55));
  border-bottom: 1px solid var(--line-faint);
}
.site-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.05rem clamp(1.25rem, 4vw, 3rem);
  max-width: var(--container-wide);
  margin: 0 auto;
}
.brand {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  font-family: var(--font-display);
  font-size: 1.25rem;
  font-weight: 500;
  color: var(--ink-primary);
  border: none;
  padding: 0;
}
.brand:hover { color: var(--ember-soft); border: none; }
.brand .glyph {
  width: 29px; height: 41px;
  color: var(--ember);
  flex-shrink: 0;
  transform: none;
  transition: color .3s ease;
}
.brand .glyph__feeler,
.brand .glyph > circle:not(.v-antenna__tip) {
  animation: none;
  transform: none;
}
.brand .glyph .v-antenna__tip {
  fill: var(--ember);
  opacity: 0.35;
  animation: v-antenna-tip-pulse 5s ease-in-out infinite;
}
@keyframes v-antenna-tip-pulse {
  0%        { opacity: 0.35; }
  14%       { opacity: 1; }
  28%, 100% { opacity: 0.35; }
}
.brand:hover .glyph { color: var(--ember-soft); }
.brand:hover .glyph .v-antenna__tip { fill: var(--ember); }

.nav { display: flex; align-items: center; gap: 1.6rem; }
.nav a {
  font-size: 0.9rem;
  color: var(--ink-soft);
  border: none;
  padding: 0;
  position: relative;
}
body:has(main > section.hero) .nav a {
  color: rgba(212, 207, 194, 0.78);
}
body:has(main > section.hero) .nav__menu-btn {
  color: rgba(212, 207, 194, 0.78);
}
.nav a::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: -6px;
  height: 1px;
  background: var(--ember);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform .3s ease;
}
.nav a:hover { color: var(--ink-primary); }
.nav a:hover::after { transform: scaleX(1); }
.nav__menu-btn {
  display: none;
  background: none; border: none;
  font-family: var(--font-mono);
  font-size: 0.74rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ink-soft);
  cursor: pointer;
  padding: 0.5rem 0;
}
@media (max-width: 900px) {
  .nav { display: none; }
  .nav.is-open {
    display: flex; flex-direction: column; gap: 1rem; align-items: flex-start;
    position: absolute; top: 100%; left: 0; right: 0;
    padding: 1.5rem clamp(1.25rem, 4vw, 3rem);
    background: var(--bg-base); border-bottom: 1px solid var(--line-faint);
  }
  .nav__menu-btn { display: inline-block; }
}

/* =============================================================
   HERO — lean, conversion-oriented
   Antenna is now a small elegant mark beside IMBAS, not over it.
   ============================================================= */
.hero {
  position: relative;
  min-height: 100vh;
  padding: 0;
  display: flex;
  align-items: center;
  overflow: hidden;
}

/* Single warm focal event — vignette base; living layers in .aurora-field */
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 72% 58% at 50% 48%, rgba(var(--bg-deep-rgb), 0.22), transparent 72%);
  pointer-events: none;
  z-index: 0;
}

.hero__fog {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    linear-gradient(180deg,
      rgba(var(--bg-deep-rgb), 0.35) 0%,
      transparent 14%,
      transparent 82%,
      rgba(var(--bg-deep-rgb), 0.28) 100%);
}

.hero__horizon {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, var(--line-faint) 15%, var(--line-soft) 50%, var(--line-faint) 85%, transparent 100%);
  z-index: 1; pointer-events: none;
}

.hero__stage {
  position: relative;
  z-index: 3;
  width: 100%;
  max-width: var(--container-wide);
  margin: 0 auto;
  padding: clamp(4.25rem, 8vh, 6.25rem) clamp(1.25rem, 4vw, 3rem) clamp(2.5rem, 5vh, 4rem);
  display: grid;
  grid-template-rows: auto 1fr;
  gap: clamp(1.5rem, 3vh, 2.25rem);
  min-height: 100vh;
  align-content: center;
  justify-items: center;
}

.hero__meta {
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.95);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  width: 100%;
  margin-top: 0;
  margin-bottom: 0;
}
.hero__meta--instrument {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  max-width: calc(100% - 2rem);
  margin-inline: auto;
  padding: 0.15rem 0;
  color: rgba(212, 207, 194, 0.98);
  letter-spacing: 0.2em;
}
.hero__meta-copy {
  position: relative;
  z-index: 1;
}
.hero__meta--instrument::before,
.hero__meta--instrument::after {
  content: "";
  position: absolute;
  top: 50%;
  width: min(11vw, 7rem);
  height: 1px;
  transform: translateY(-50%);
  pointer-events: none;
  opacity: 0.72;
}
.hero__meta--instrument::before {
  right: calc(100% + 0.9rem);
  background: linear-gradient(270deg, rgba(var(--ember-rgb), 0.31), transparent 82%);
}
.hero__meta--instrument::after {
  left: calc(100% + 0.9rem);
  background: linear-gradient(90deg, rgba(var(--ember-rgb), 0.31), transparent 82%);
}
.hero__meta--instrument.reveal {
  transition-duration: 1.1s;
}
@media (max-width: 680px) {
  .hero__meta--instrument::before,
  .hero__meta--instrument::after {
    width: min(8vw, 3.5rem);
  }
  .hero__meta--instrument::before {
    right: calc(100% + 0.65rem);
  }
  .hero__meta--instrument::after {
    left: calc(100% + 0.65rem);
  }
}

/* ---------- The center stack ---------- */
.hero__center {
  display: grid;
  gap: clamp(1.4rem, 3vh, 2.25rem);
  align-content: center;
  justify-items: center;
  text-align: center;
  width: 100%;
  max-width: min(980px, 100%);
  margin: 0 auto;
  padding-inline: clamp(0.75rem, 3vw, 1.5rem);
  box-sizing: border-box;
}

.hero__tagline {
  font-family: var(--font-mono);
  font-size: clamp(0.6875rem, 1.4vw, 0.8125rem);
  letter-spacing: clamp(0.1em, 0.28vw, 0.16em);
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.95);
  margin: 0;
  line-height: 1.5;
  text-align: center;
}
.hero__tagline-part {
  display: inline;
}
@media (min-width: 1101px) {
  .hero__tagline {
    white-space: nowrap;
  }
}
@media (max-width: 1100px) {
  .hero__tagline {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.2em;
    letter-spacing: 0.12em;
  }
  .hero__tagline-part {
    display: block;
  }
  .hero__tagline-sep {
    display: none;
  }
}

/* The monolith — IMBAS wordmark at full weight */
.hero__monolith {
  position: relative;
  margin: clamp(0.1rem, 0.35vh, 0.25rem) 0 clamp(0.25rem, 0.65vh, 0.5rem);
  user-select: none;
  line-height: 0.83;
  text-align: center;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.hero__monolith-text {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(4.65rem, 13.2vw, 16.25rem);
  letter-spacing: -0.044em;
  line-height: 0.83;
  background: linear-gradient(180deg, var(--ink-luminous) 0%, var(--ink-primary) 55%, rgba(180,196,220,0.4) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  position: relative;
  display: inline-block;
  max-width: 100%;
  filter: drop-shadow(0 0 calc(var(--cursor-prox) * 24px) rgba(var(--ember-rgb), calc(var(--cursor-prox) * 0.22)));
  transition: filter 1.4s ease;
}
.hero__monolith-text::after {
  display: none;
}

.hero__subhead {
  margin: 0;
  max-width: min(34ch, 92vw);
  font-weight: 400;
  width: 100%;
  box-sizing: border-box;
}
.hero__subhead-line {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 400;
  font-size: clamp(1.22rem, 2.15vw, 1.88rem);
  line-height: 1.38;
  letter-spacing: -0.008em;
  color: var(--ink-primary);
  margin: 0 0 0.72em;
  padding-inline: 0.25rem;
}
.hero__subhead-line,
.hero__subhead-close {
  display: block;
}
.hero__subhead-close {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 400;
  font-size: clamp(1.05rem, 1.65vw, 1.4rem);
  line-height: 1.38;
  letter-spacing: -0.006em;
  color: rgba(180, 192, 210, 0.95);
  margin: 0 0 clamp(0.1rem, 0.35vh, 0.25rem);
}

/* ---------- Capture row ---------- */
.hero__capture-block {
  display: grid;
  gap: 0.65rem;
  width: 100%;
  max-width: min(460px, calc(100vw - 2.5rem));
  justify-items: center;
  box-sizing: border-box;
  margin-top: clamp(0.55rem, 1.35vh, 1rem);
  margin-bottom: clamp(0.35rem, 0.9vh, 0.65rem);
}
.hero__capture {
  display: inline-flex;
  width: auto;
  max-width: 100%;
}
.hero__capture input[type="email"] {
  flex: 1;
  background: transparent;
  border: none;
  color: var(--ink-luminous);
  font-family: var(--font-body);
  font-size: clamp(0.9375rem, 2.2vw, 1rem);
  padding: 0.7rem 0;
  outline: none;
  min-width: 0;
}
.hero__capture input::placeholder { color: rgba(180, 192, 210, 0.88); }
.hero__capture button {
  background: #B46A5A;
  color: #F2E8DC;
  border: 1px solid rgba(242, 232, 220, 0.22);
  border-radius: 2px;
  font-family: var(--font-mono);
  font-size: clamp(0.875rem, 1.9vw, 1rem);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  padding: 1.15rem 2.85rem;
  cursor: pointer;
  font-weight: 500;
  box-shadow: 0 4px 22px rgba(180, 106, 90, 0.34);
  transition: background .25s ease, border-color .25s ease, box-shadow .25s ease, transform .25s ease;
  white-space: nowrap;
}
.hero__microcopy {
  font-family: var(--font-display);
  font-size: clamp(0.9375rem, 2.2vw, 1.05rem);
  line-height: 1.5;
  color: #FCF8EC;
  opacity: 1;
  margin: 0;
  max-width: 36ch;
  text-align: center;
}
.hero__capture-msg {
  font-family: var(--font-mono);
  font-size: 0.7rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ember-soft);
  margin-top: 0.25rem;
  opacity: 0;
  transition: opacity .4s ease;
}
.hero__capture-msg.is-visible { opacity: 1; }

.hero__secondary {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(212, 207, 194, 1);
  border: none;
  padding: 0;
  margin-top: clamp(1.1rem, 2.4vh, 1.5rem);
}
.hero__secondary::after {
  content: "";
  display: block;
  width: 0; height: 1px;
  background: var(--ember);
  transition: width .3s ease;
  align-self: flex-end;
  margin-bottom: 0.2rem;
}
.hero__secondary:hover { color: var(--ember-soft); }
.hero__secondary:hover::after { width: 16px; }
.hero__secondary .arrow { transition: transform .35s ease; }
.hero__secondary:hover .arrow { transform: translateX(4px); }

.hero__capture button:hover {
  background: #A85A4F;
  border-color: rgba(242, 232, 220, 0.28);
  box-shadow: 0 6px 26px rgba(180, 106, 90, 0.42);
  transform: translateY(-1px);
}
.hero__capture button:active { transform: translateY(0); }

@media (max-width: 1200px) {
  .hero__monolith-text {
    font-size: clamp(4.125rem, 12.1vw, 9.35rem);
    letter-spacing: -0.04em;
  }
}

@media (max-width: 900px) {
  .hero__stage { min-height: auto; padding-top: clamp(3.75rem, 9vh, 5.25rem); padding-bottom: clamp(2rem, 5vh, 3rem); }
  .hero__monolith-text { font-size: clamp(3.7rem, 13.75vw, 6.875rem); }
  .hero__subhead { max-width: min(32ch, 94vw); }
}

@media (max-width: 520px) {
  .hero__monolith-text {
    font-size: clamp(3.4rem, 17vw, 5.225rem);
    max-width: 100%;
  }
  .hero__capture button {
    padding: 0.82rem 1.45rem;
    font-size: max(0.8rem, var(--mono-min));
    letter-spacing: 0.14em;
  }
  .hero__center { gap: 1.2rem; }
  .hero__secondary { margin-top: 1rem; }
  .hero__subhead-line { padding-inline: 0; }
  .hero__capture-block { max-width: min(460px, calc(100vw - 2rem)); }
}

/* =============================================================
   BRIDGE — centered thesis + paired supporting plates
   ============================================================= */
.bridge {
  position: relative;
  padding: clamp(var(--space-5), 8vw, var(--space-7)) 0;
  background: var(--bg-base);
  border-bottom: 1px solid var(--line-faint);
  overflow: hidden;
  isolation: isolate;
}
.bridge::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(ellipse 55% 45% at 50% 0%, rgba(var(--ember-rgb), 0.06), transparent 68%),
    radial-gradient(ellipse 65% 55% at 50% 100%, rgba(var(--bg-deep-rgb), 0.32), transparent 72%);
}
.bridge__inner {
  position: relative;
  z-index: 2;
  max-width: var(--container-mid);
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 3rem);
}
.bridge__frame {
  position: relative;
  padding: clamp(2rem, 4vw, 3rem) clamp(1.5rem, 3vw, 2.5rem);
  border: 1px solid var(--line-soft);
  background:
    linear-gradient(rgba(140, 176, 210, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(140, 176, 210, 0.035) 1px, transparent 1px),
    rgba(var(--bg-elevated-rgb), 0.12);
  background-size: 28px 28px, 28px 28px, auto;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}
.bridge__thesis {
  margin: 0 auto;
  text-align: center;
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.65rem, 2.8vw, 2.2rem);
  line-height: 1.28;
  letter-spacing: -0.012em;
  color: #F2E8DC;
  max-width: 24ch;
  padding-bottom: var(--space-3);
  position: relative;
}
.bridge__connector {
  width: 1px;
  height: clamp(1.25rem, 2.5vw, 2rem);
  margin: 0 auto var(--space-2);
  background: linear-gradient(180deg, rgba(var(--ember-rgb), 0.55), rgba(var(--ember-rgb), 0.08));
  opacity: 0.85;
}
.bridge__plates {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 2.5vw, 1.35rem);
  align-items: stretch;
  padding-top: var(--space-2);
  border-top: 1px solid var(--line-faint);
}
.bridge__plate {
  margin: 0;
  padding: clamp(1.35rem, 2.5vw, 1.85rem);
  border: 1px solid rgba(237, 228, 210, 0.18);
  background: rgba(var(--bg-elevated-rgb), 0.28);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  position: relative;
  box-shadow: inset 0 1px 0 rgba(252, 248, 236, 0.04);
}
.bridge__plate::before {
  content: "";
  position: absolute;
  top: 0;
  left: clamp(1.25rem, 2.5vw, 1.75rem);
  right: clamp(1.25rem, 2.5vw, 1.75rem);
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--ember-rgb), 0.42), transparent);
  opacity: 0.9;
}
.bridge__plate::after {
  content: "";
  position: absolute;
  top: 0.65rem;
  left: 0.65rem;
  width: 8px;
  height: 8px;
  border-top: 1px solid rgba(var(--ember-rgb), 0.35);
  border-left: 1px solid rgba(var(--ember-rgb), 0.35);
  opacity: 0.7;
}
.bridge__plate p {
  font-family: var(--font-display);
  font-style: normal;
  font-weight: 400;
  font-size: clamp(1rem, 1.35vw, 1.15rem);
  line-height: 1.55;
  letter-spacing: -0.004em;
  color: rgba(242, 232, 220, 0.95);
  margin: 0;
}
.bridge__plate--stakes p { max-width: 38ch; }
.bridge__plate--measure p { max-width: 34ch; }

@media (max-width: 800px) {
  .bridge { padding: var(--space-5) 0; }
  .bridge__frame { padding: var(--space-4) var(--space-3); }
  .bridge__thesis { max-width: 28ch; }
  .bridge__plates { grid-template-columns: 1fr; gap: var(--space-3); }
  .bridge__plate p { max-width: none; }
}

/* =============================================================
   ROADMAP — Now / Next / Why
   ============================================================= */
.roadmap {
  position: relative;
  padding: var(--space-7) 0;
  background: var(--bg-surface);
  border-top: 1px solid var(--line-faint);
  border-bottom: 1px solid var(--line-faint);
  overflow: hidden;
  isolation: isolate;
}
.roadmap::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(ellipse 50% 42% at 20% 18%, rgba(var(--ember-rgb), 0.06), transparent 68%),
    radial-gradient(ellipse 48% 40% at 80% 82%, var(--slate-deeper), transparent 72%);
  opacity: 0.75;
}
.roadmap__inner {
  position: relative;
  z-index: 2;
  max-width: var(--container-wide);
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 3rem);
}
.roadmap__title {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.8rem, 2.6vw, 2.2rem);
  line-height: 1.12;
  letter-spacing: -0.012em;
  color: var(--ink-luminous);
  margin: 0 0 var(--space-2);
  max-width: 22ch;
}
.roadmap__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.5rem, 3vw, 2.5rem);
  margin-top: var(--space-4);
}
.roadmap__label {
  display: block;
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.95);
  margin-bottom: 0.65rem;
  padding-bottom: 0.55rem;
  position: relative;
}
.roadmap__label::before { content: "// "; color: rgba(180, 192, 210, 0.92); }
.roadmap__label::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 60px;
  height: 1px;
  background: rgba(var(--ember-rgb), 0.6);
}
.roadmap__label--now {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
}
.roadmap__label-dot {
  display: inline-block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--ember);
  box-shadow: 0 0 8px rgba(var(--ember-rgb), 0.5);
  flex-shrink: 0;
  animation: roadmap-now-pulse 3.5s ease-in-out infinite;
}
@keyframes roadmap-now-pulse {
  0%, 100% { opacity: 0.55; transform: scale(1); }
  50%      { opacity: 1; transform: scale(1.3); box-shadow: 0 0 12px rgba(var(--ember-rgb), 0.72); }
}
.roadmap__item p {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1rem, 1.4vw, 1.15rem);
  line-height: 1.45;
  color: var(--ink-soft);
  margin: 0;
}
.roadmap__emphasis {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.2rem, 1.8vw, 1.45rem);
  line-height: 1.3;
  letter-spacing: -0.008em;
  color: var(--ink-luminous);
  margin: 0;
}
@media (max-width: 800px) {
  .roadmap__grid { grid-template-columns: 1fr; gap: var(--space-4); }
}

/* =============================================================
   VALUE BEATS — horizontal flow sequence
   ============================================================= */
.value {
  position: relative;
  padding: var(--space-7) 0 var(--space-7);
  overflow: hidden;
  isolation: isolate;
}
.value::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(ellipse 34% 88% at 40% -5%, var(--ember-trace), transparent 58%),
    radial-gradient(ellipse 28% 55% at 46% 58%, rgba(var(--ember-rgb), 0.05), transparent 68%);
  animation: aurora-descend 96s ease-in-out infinite alternate;
}
.value__inner {
  position: relative;
  z-index: 2;
  max-width: var(--container-wide);
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 3rem);
}
.value__head {
  margin-bottom: var(--space-2);
}
.value__title {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.8rem, 2.6vw, 2.2rem);
  line-height: 1.12;
  letter-spacing: -0.012em;
  color: var(--ink-luminous);
  margin: 0;
  max-width: 22ch;
}
.value__beats {
  list-style: none;
  margin: 0;
  padding: 1.75rem 0 0;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(0.75rem, 2vw, 1.5rem);
  position: relative;
}
.value__beats::after {
  content: "";
  position: absolute;
  left: 4%;
  right: 4%;
  top: 0.55rem;
  height: 1px;
  background: linear-gradient(
    90deg,
    rgba(var(--ember-rgb), 0) 0%,
    rgba(var(--ember-rgb), 0.5) 8%,
    rgba(var(--ember-rgb), 0.5) 92%,
    rgba(var(--ember-rgb), 0) 100%
  );
  pointer-events: none;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.85s cubic-bezier(.22,.72,.18,1) 0.55s;
}
.value--flow .value__beats.is-traced::after {
  transform: scaleX(1);
}
.value__beats li {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.06rem, 1.32vw, 1.29rem);
  line-height: 1.35;
  letter-spacing: -0.008em;
  color: var(--ink-soft);
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 0.85rem;
  padding: 0 0.25rem;
}
.value__beats li::before {
  display: none;
}
.value__beat-dot {
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--ember);
  opacity: 0.3;
  box-shadow: none;
  pointer-events: none;
  transition: opacity 0.4s ease, box-shadow 0.4s ease;
}
.value__beat-dot.is-active {
  opacity: 1;
  box-shadow: 0 0 10px rgba(var(--ember-rgb), 0.5), 0 0 18px rgba(var(--ember-rgb), 0.2);
}

@media (max-width: 900px) {
  .value__beats {
    grid-template-columns: 1fr;
    padding: 0 0 0 0.15rem;
    gap: clamp(1rem, 2vh, 1.5rem);
  }
  .value__beats::after {
    left: 0.72rem;
    right: auto;
    top: 0.65rem;
    bottom: 0.65rem;
    width: 1px;
    height: auto;
    transform: scaleY(0);
    transform-origin: top center;
    transition: transform 0.85s cubic-bezier(.22,.72,.18,1) 0.55s;
    background: linear-gradient(
      180deg,
      rgba(var(--ember-rgb), 0) 0%,
      rgba(var(--ember-rgb), 0.5) 10%,
      rgba(var(--ember-rgb), 0.5) 90%,
      rgba(var(--ember-rgb), 0) 100%
    );
  }
  .value--flow .value__beats.is-traced::after {
    transform: scaleY(1);
  }
  .value__beats li {
    flex-direction: row;
    align-items: center;
    text-align: left;
    font-size: clamp(1.05rem, 3.8vw, 1.35rem);
    line-height: 1.35;
    gap: 0.75rem;
    padding-left: 0;
  }
  .value__beat-dot {
    align-self: center;
    margin-top: 0;
    position: relative;
    z-index: 1;
  }
  .value__beats li::before {
    display: none;
  }
  .value { padding: var(--space-5) 0; }
}

/* =============================================================
   VOLUNTEER GAP — simplified
   Four short stanzas, then two short lines
   ============================================================= */
.gap {
  position: relative;
  padding: var(--space-8) 0;
  background: linear-gradient(180deg, var(--bg-base) 0%, var(--bg-deep) 48%, var(--bg-base) 100%);
  border-top: 1px solid var(--line-faint);
  border-bottom: 1px solid var(--line-faint);
  overflow: hidden;
  isolation: isolate;
}
.gap__inner {
  position: relative;
  z-index: 2;
  max-width: var(--container-mid);
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 3rem);
  overflow: visible;
}
/* Detection chamber — almost nothing; room for Pass 6 firefly */
.gap::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 42% 38% at 50% 50%, rgba(var(--bg-surface-rgb), 0.12), transparent 72%);
  pointer-events: none;
  opacity: 0.3;
}

.gap__sequence {
  display: grid;
  gap: clamp(1rem, 2vh, 1.5rem);
  margin-bottom: var(--space-6);
}
.gap__line {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(2rem, 4.6vw, 3.6rem);
  line-height: 1.05;
  letter-spacing: -0.02em;
  margin: 0;
}
.gap__line--scroll {
  opacity: 0;
  transform: translateY(1.25rem);
  transition: opacity 0.65s ease, transform 0.65s ease;
}
.gap__line--scroll.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.gap__line--knows { color: var(--ink-luminous); }
.gap__line--surfaces { color: var(--ink-soft); }
.gap__line--leaves {
  position: relative;
  color: rgba(180, 192, 210, 0.95);
  font-style: italic;
}
.gap__line--resolution {
  position: relative;
  color: var(--ink-primary);
  margin-top: var(--space-2);
}
.gap__line--resolution strong {
  font-weight: 400;
  background: linear-gradient(180deg, var(--ember-bright) 0%, var(--ember) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  transition: filter 1.2s ease;
}
.gap__line--leaves.is-visible ~ .gap__line--resolution.is-visible strong {
  filter: drop-shadow(0 0 14px rgba(var(--ember-rgb), 0.28));
}

.gap__definition {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.15rem, 1.6vw, 1.35rem);
  line-height: 1.4;
  color: var(--ink-luminous);
  max-width: 56ch;
  padding-top: var(--space-4);
  margin-bottom: var(--space-3);
  border-top: 1px solid var(--line-soft);
}
.gap__support {
  font-size: 1rem;
  color: var(--ink-soft);
  max-width: 56ch;
  margin-bottom: var(--space-4);
}
.gap__link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--font-mono);
  font-size: 0.74rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-primary);
  border-bottom: 1px solid var(--line-soft);
  padding-bottom: 0.3rem;
}
.gap__link:hover { color: var(--ember-soft); border-bottom-color: var(--ember); }
.gap__link .arrow { transition: transform .35s ease; }
.gap__link:hover .arrow { transform: translateX(4px); }

@media (max-width: 900px) {
  .gap {
    padding: var(--space-6) 0;
  }
  .gap__inner {
    padding-inline: clamp(1rem, 4vw, 1.25rem);
  }
  .gap__line {
    font-size: clamp(1.75rem, 7.5vw, 2.75rem);
    overflow-wrap: break-word;
  }
  .gap__definition,
  .gap__support {
    max-width: none;
  }
}

/* =============================================================
   STAKES — quiet context beat after hero
   ============================================================= */
.stakes {
  position: relative;
  padding: clamp(var(--space-5), 8vw, var(--space-7)) 0;
  background: var(--bg-base);
  overflow: hidden;
  isolation: isolate;
}
.stakes__inner {
  position: relative;
  z-index: 2;
  max-width: var(--container-mid);
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 3rem);
  text-align: center;
}
.stakes__copy {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.15rem, 1.6vw, 1.35rem);
  line-height: 1.4;
  color: var(--ink-luminous);
  max-width: 62ch;
  margin: 0 auto;
  text-align: center;
}
.stakes__inner .stakes__copy:has(+ .gap__link) {
  margin-bottom: var(--space-4);
}

/* Ephemeral beat — fade + ember enactment */
.ephemeral-fade {
  display: inline;
  opacity: 0;
}
[data-reveal-section].is-revealed .ephemeral-fade {
  animation: ephemeral-vanish 2.6s cubic-bezier(.2,.7,.2,1) forwards;
  animation-delay: 1.5s;
}
@keyframes ephemeral-vanish {
  0% {
    opacity: 0;
  }
  19.23% {
    opacity: 1;
  }
  53.85% {
    opacity: 1;
  }
  100% {
    opacity: 0.2;
  }
}
.ember {
  color: #B46A5A;
  opacity: 1;
  animation: ember-signal-glow 3.75s ease-in-out infinite;
}
@keyframes ember-signal-glow {
  0%, 100% {
    text-shadow: 0 0 4px var(--ember-glow);
  }
  50% {
    text-shadow:
      0 0 8px rgba(var(--ember-rgb), 0.42),
      0 0 16px var(--ember-glow);
  }
}

@media (max-width: 800px) {
  .stakes {
    padding: var(--space-5) 0;
  }
}

/* =============================================================
   PASS 10 — PROOF STRIP: archive stats (homepage landing placement)
   ============================================================= */
.proof-strip {
  padding: var(--space-4) clamp(1.25rem, 4vw, 3rem);
  background: var(--bg-base);
  border-bottom: 1px solid var(--line-faint);
}
.proof-strip--landing {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: var(--space-3);
  padding-bottom: var(--space-3);
  border-top: none;
  border-bottom: 1px solid var(--line-faint);
  background: transparent;
}
.hero:has(+ .proof-strip--landing) {
  min-height: auto;
}
.hero:has(+ .proof-strip--landing) .hero__horizon {
  display: none;
}
.hero:has(+ .proof-strip--landing) .hero__stage {
  min-height: auto;
  padding-bottom: clamp(1.15rem, 2.4vh, 1.65rem);
}
.hero:has(+ .proof-strip--landing) .hero__secondary {
  margin-top: clamp(0.55rem, 1.1vh, 0.8rem);
  margin-bottom: calc(var(--space-4) + 1.5rem + 0.75rem);
}
.hero + .proof-strip--landing {
  margin-top: var(--space-3);
}
@media (max-width: 900px) {
  .hero:has(+ .proof-strip--landing) .hero__stage {
    padding-bottom: clamp(1rem, 2.2vh, 1.5rem);
  }
  .hero:has(+ .proof-strip--landing) .hero__secondary {
    margin-top: 0.65rem;
    margin-bottom: calc(var(--space-3) + 1.25rem + 0.75rem);
  }
  .hero + .proof-strip--landing {
    margin-top: var(--space-3);
    padding-top: var(--space-3);
  }
}
@media (max-width: 520px) {
  .hero:has(+ .proof-strip--landing) .hero__stage {
    padding-bottom: var(--space-2);
  }
  .hero:has(+ .proof-strip--landing) .hero__secondary {
    margin-top: 0.6rem;
    margin-bottom: calc(var(--space-3) + 1.25rem + 0.75rem);
  }
  .hero + .proof-strip--landing {
    margin-top: var(--space-3);
    padding-top: var(--space-2);
    padding-bottom: var(--space-3);
  }
}
.proof-strip--landing .proof-strip__meta {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  line-height: 1;
  text-align: center;
}
.proof-strip--landing .proof-strip__metrics {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  column-gap: 0.55em;
  row-gap: 0.35rem;
  line-height: 1.15;
  transform: translateY(-4px);
}
.proof-strip--landing .proof-strip__lead {
  display: inline-flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 10px;
}
.proof-strip--landing .proof-strip__lead .dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--ember);
  flex-shrink: 0;
  align-self: center;
  box-shadow: 0 0 8px var(--ember-glow);
  animation: proof-strip-dot-pulse 6.5s ease-in-out infinite;
}
@keyframes proof-strip-dot-pulse {
  0%, 100% {
    opacity: 0.58;
    box-shadow: 0 0 6px var(--ember-glow);
  }
  50% {
    opacity: 0.92;
    box-shadow: 0 0 12px var(--ember-pulse), 0 0 3px rgba(var(--ember-rgb), 0.22);
  }
}
.proof-strip--landing .proof-strip__metric {
  display: inline-flex;
  align-items: baseline;
  gap: 0.5em;
}
.proof-strip--landing .proof-strip__num {
  line-height: 1;
  flex-shrink: 0;
}
.proof-strip--landing .proof-strip__sep {
  color: rgba(180, 192, 210, 0.7);
  line-height: 1;
  user-select: none;
}
.proof-strip__meta {
  font-family: var(--font-mono);
  font-size: 0.84rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.95);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin: 0 auto;
  max-width: var(--container-wide);
  text-align: center;
}
.proof-strip__num {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: 1.35rem;
  letter-spacing: -0.02em;
  color: var(--ink-luminous);
  text-transform: none;
}
.proof-strip__meta .dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--ember);
  box-shadow: 0 0 10px var(--ember-glow);
  flex-shrink: 0;
}
@media (max-width: 520px) {
  .proof-strip__meta {
    flex-wrap: wrap;
    justify-content: center;
    row-gap: 0.35rem;
    font-size: 0.75rem;
    letter-spacing: 0.16em;
  }
  .proof-strip--landing .proof-strip__metrics {
    column-gap: 0.45em;
  }
}

/* =============================================================
   WHAT IMBAS TRACKS — categories (still, scannable)
   ============================================================= */
.categories {
  padding: var(--space-7) 0;
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: var(--bg-base);
}
.categories::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(ellipse 75% 38% at 50% 0%, rgba(var(--ember-rgb), 0.045), transparent 64%),
    linear-gradient(180deg, rgba(var(--bg-elevated-rgb), 0.07) 0%, transparent 38%);
}
.categories__head,
.categories__grid {
  position: relative;
  z-index: 1;
}
.categories__head {
  max-width: var(--container-wide);
  margin: 0 auto var(--space-5);
  padding: 0 clamp(1.25rem, 4vw, 3rem);
}
.categories__head h2 {
  font-size: clamp(1.8rem, 2.6vw, 2.2rem);
  max-width: 22ch;
  color: var(--ink-luminous);
}
.categories__grid {
  max-width: var(--container-wide);
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 3rem);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  border-top: 1px solid var(--line-soft);
}
.cat {
  padding: var(--space-4) var(--space-3) var(--space-4);
  border-right: 1px solid var(--line-faint);
  border-bottom: 1px solid var(--line-faint);
  position: relative;
  transition: background .6s ease;
}
.cat:last-child { border-right: none; }
.cat:hover { background: rgba(52, 72, 102, 0.52); }
.cat__id {
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.92);
  margin-bottom: var(--space-2);
}
.cat h3 {
  font-family: var(--font-display);
  font-size: 2.02rem;
  font-weight: 450;
  letter-spacing: -0.01em;
  margin-bottom: 0.6rem;
  color: var(--ember-soft);
  text-shadow: 0 0 18px rgba(var(--ember-rgb), 0.28), 0 0 42px rgba(var(--ember-rgb), 0.12);
}
.cat p { font-size: 0.98rem; color: var(--ink-soft); margin: 0; }
.cat__mark {
  width: 42px; height: 42px;
  color: var(--ink-secondary);
  opacity: 0.7;
  margin-bottom: var(--space-2);
  transition: color .6s ease, opacity .6s ease;
}
.cat:hover .cat__mark {
  color: var(--ember-soft);
  opacity: 1;
  animation: cat-glyph-pulse 0.85s ease-out 1;
}
@keyframes cat-glyph-pulse {
  0%, 100% { transform: scale(1); }
  45%      { transform: scale(1.14); }
}
@media (max-width: 900px) {
  .categories__grid { grid-template-columns: 1fr; }
  .cat { border-right: none; }
}

/* =============================================================
   COMPOUNDING — direction & degree (boat off course, abstracted)
   Two diverging lines visualize the idea.
   ============================================================= */
.compounding {
  position: relative;
  padding: var(--space-8) 0;
  background: var(--bg-surface);
  border-top: 1px solid var(--line-faint);
  overflow: hidden;
  isolation: isolate;
}
/* Instrument glow — cool, focused on the diagram chamber */
.compounding::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 48% 58% at 76% 52%, var(--slate-bloom), transparent 68%);
  pointer-events: none;
  opacity: 0.48;
}
.compounding__inner {
  position: relative;
  z-index: 2;
  max-width: var(--container-wide);
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 3rem);
  display: grid;
  grid-template-columns: minmax(0, 0.45fr) minmax(0, 0.55fr);
  gap: clamp(2rem, 5vw, 4.5rem);
  align-items: center;
}
.compounding__copy h2 {
  font-size: clamp(2rem, 3.4vw, 2.6rem);
  line-height: 1.08;
  margin-bottom: var(--space-4);
  max-width: 18ch;
  color: var(--ink-luminous);
}
.compounding__copy p {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.1rem, 1.4vw, 1.25rem);
  line-height: 1.5;
  color: var(--ink-soft);
  max-width: 48ch;
}
.compounding__copy p + p { margin-top: 1.1em; }
.compounding__punchline {
  font-size: clamp(1.38rem, 1.75vw, 1.56rem);
  line-height: 1.42;
  font-weight: 450;
  max-width: 42ch;
  background: linear-gradient(118deg, var(--ink-luminous) 0%, var(--ember-soft) 52%, var(--ember) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.divergence {
  position: relative;
  width: 100%;
  aspect-ratio: 1.6;
  background: linear-gradient(180deg, transparent 0%, rgba(var(--bg-elevated-rgb), 0.42) 100%);
  border-radius: 2px;
  overflow: hidden;
}
.divergence::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 68% 62% at 50% 50%, rgba(155, 188, 228, 0.11), transparent 72%),
    radial-gradient(ellipse 85% 55% at 100% 50%, var(--slate-bloom), transparent 62%);
  pointer-events: none;
  opacity: 0.82;
}
.divergence__svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.divergence__path {
  stroke-dasharray: var(--path-len, 600);
  stroke-dashoffset: var(--path-len, 600);
  transition: stroke-dashoffset 1.2s cubic-bezier(.22,.72,.18,1);
}
.divergence__path--drift {
  transition-duration: 1.4s;
}
.divergence.is-drawn .divergence__path--intended { stroke-dashoffset: 0; }
.divergence.is-drift-drawn .divergence__path--drift { stroke-dashoffset: 0; }
.divergence__endpoint { opacity: 0; }
.divergence.is-drawn .divergence__endpoint--top {
  opacity: 1;
  transition: opacity 0.45s ease 1.05s;
}
.divergence.is-drift-drawn .divergence__endpoint--bot {
  opacity: 1;
  transition: opacity 0.45s ease 0.15s;
}
.divergence.is-drawn .divergence__origin-ring {
  animation: divergence-origin-draw 1.8s ease-out;
}
@keyframes divergence-origin-draw {
  0%   { opacity: 0.12; stroke-width: 0.6; }
  28%  { opacity: 0.9;  stroke-width: 1.6; }
  100% { opacity: 0.4;  stroke-width: 1; }
}
.divergence.is-live .divergence__origin-core {
  animation: instrument-origin-pulse 8s ease-in-out infinite;
}
.divergence.is-live .divergence__endpoint--top {
  filter: drop-shadow(0 0 5px rgba(180, 208, 232, 0.42)) drop-shadow(0 0 10px rgba(180, 208, 232, 0.18));
}
.divergence.is-live .divergence__endpoint--bot {
  animation: instrument-drift-pulse 6s ease-in-out infinite;
}
@keyframes instrument-origin-pulse {
  0%, 100% { opacity: 0.85; filter: drop-shadow(0 0 0 rgba(252, 248, 236, 0)); }
  50%      { opacity: 1;    filter: drop-shadow(0 0 8px rgba(252, 248, 236, 0.3)); }
}
@keyframes instrument-drift-pulse {
  0%, 100% { opacity: 0.95; filter: drop-shadow(0 0 4px rgba(var(--ember-rgb), 0.35)); }
  50%      { opacity: 1;    filter: drop-shadow(0 0 10px rgba(var(--ember-rgb), 0.55)) drop-shadow(0 0 18px rgba(var(--ember-rgb), 0.28)); }
}
.divergence__label {
  position: absolute;
  font-family: var(--font-mono);
  font-size: 0.62rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  opacity: 0;
  transition: opacity 0.5s ease;
}
.divergence__label--start {
  left: 7%;
  top: 57%;
  color: rgba(180, 192, 210, 0.92);
}
.divergence.is-drawn .divergence__label--start {
  opacity: 1;
  transition-delay: 0.2s;
}
.divergence__label--top   { right: 2%; top: 12%; color: var(--ink-soft); }
.divergence.is-drawn .divergence__label--top {
  opacity: 1;
  transition-delay: 1.15s;
}
.divergence__label--bot   { right: 2%; bottom: 12%; color: var(--ember-soft); }
.divergence.is-drift-drawn .divergence__label--bot {
  opacity: 1;
  transition-delay: 0.35s;
}

@media (max-width: 800px) {
  .compounding__inner { grid-template-columns: 1fr; }
  .divergence { aspect-ratio: 2; }
}

/* =============================================================
   AUDIENCES — branching paths
   ============================================================= */
.audiences {
  padding: var(--space-7) 0;
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.audiences::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 58% 48% at 28% 62%, var(--slate-deeper), transparent 76%);
  pointer-events: none;
  opacity: 0.45;
}
.audiences__head {
  position: relative;
  z-index: 2;
  max-width: var(--container-wide);
  margin: 0 auto var(--space-5);
  padding: 0 clamp(1.25rem, 4vw, 3rem);
}
.audiences__grid {
  position: relative;
  z-index: 2;
  max-width: var(--container-wide);
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 3rem);
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(1.5rem, 3vw, 2.5rem);
}
.audience {
  position: relative;
  overflow: hidden;
  padding: var(--space-5);
  background: rgba(34, 48, 74, 0.32);
  border: 1px solid transparent;
  border-radius: 2px;
  transition: border-color .6s ease, background .6s ease, transform .6s ease, opacity .6s ease;
}
.audience::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
}
.audience:not(.audience--primary)::before {
  background: radial-gradient(ellipse 72% 58% at 50% 100%, var(--slate-deeper), transparent 76%);
  opacity: 0.35;
}
.audience:not(.audience--primary) {
  background: rgba(34, 48, 74, 0.18);
  opacity: 0.88;
  transform: translateY(2px);
}
.audience--primary::before {
  background:
    radial-gradient(ellipse 82% 72% at 100% 0%, rgba(var(--ember-rgb), 0.12), transparent 55%),
    radial-gradient(ellipse 62% 78% at 0% 100%, var(--slate-deeper), transparent 68%);
  opacity: 0.9;
}
.audience h3,
.audience p,
.audience a {
  position: relative;
  z-index: 1;
}
.audience:hover {
  border-color: rgba(237, 228, 210, 0.12);
  background: rgba(40, 58, 85, 0.55);
  transform: translateY(-1px);
}
.audience:not(.audience--primary):hover {
  transform: translateY(1px);
  opacity: 0.94;
}
.audience h3 {
  font-family: var(--font-display);
  font-size: 1.65rem;
  font-weight: 400;
  letter-spacing: -0.015em;
  margin-bottom: 0.8rem;
  color: var(--ink-luminous);
}
.audience p { color: var(--ink-soft); font-size: 1rem; }
.audience__callout {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 400;
  font-size: 1.55rem;
  line-height: 1.38;
  letter-spacing: -0.008em;
  color: var(--ink-soft);
  margin: 0 0 1rem;
}
.audience a {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 1rem;
  font-family: var(--font-mono);
  font-size: 0.72rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-primary);
  border-bottom: 1px solid var(--line-soft);
  padding-bottom: 0.3rem;
}
.audience a:hover { color: var(--ember-soft); border-bottom-color: var(--ember); }
@media (min-width: 761px) {
  .audiences__grid { grid-template-columns: 1.25fr 0.75fr; }
  .audience--primary {
    padding: var(--space-6) var(--space-6) var(--space-7);
    background: linear-gradient(165deg, rgba(34, 38, 50, 0.82) 0%, rgba(28, 34, 46, 0.78) 100%);
    border-color: rgba(var(--ember-rgb), 0.14);
    box-shadow: inset 0 0 0 1px rgba(var(--ember-rgb), 0.08);
  }
  .audience--primary h3 { font-size: 1.9rem; }
  .audience:not(.audience--primary) {
    padding: var(--space-4) var(--space-5);
  }
}
@media (max-width: 760px) {
  .audiences__grid { grid-template-columns: 1fr; }
  .audience--primary {
    padding: var(--space-5);
    background: linear-gradient(165deg, rgba(34, 38, 50, 0.78) 0%, rgba(28, 34, 46, 0.74) 100%);
    border-color: rgba(var(--ember-rgb), 0.12);
  }
  .audience:not(.audience--primary) {
    padding: var(--space-4);
    opacity: 0.9;
  }
}

/* =============================================================
   CLOSE — origin inscription + field notes, two-up
   ============================================================= */
.close {
  position: relative;
  padding: var(--space-7) 0 var(--space-8);
  border-top: 1px solid var(--line-faint);
  overflow: hidden;
  isolation: isolate;
  background: linear-gradient(180deg, var(--bg-base) 0%, var(--bg-surface) 100%);
}
.close::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(ellipse 48% 38% at 28% 88%, rgba(var(--ember-rgb), 0.055), transparent 72%),
    radial-gradient(ellipse 44% 34% at 72% 42%, rgba(var(--ember-rgb), 0.045), transparent 72%);
  animation: aurora-distant 130s ease-in-out infinite alternate;
  opacity: 0.65;
}
.close__inner {
  position: relative;
  z-index: 2;
  max-width: var(--container-wide);
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 3rem);
}
.close__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(2rem, 5vw, 4rem);
  align-items: center;
}
.close__origin {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: var(--space-4) clamp(0.5rem, 2vw, 1.5rem);
  overflow: visible;
}
.origin__bloom {
  position: absolute;
  inset: -55% -25%;
  pointer-events: none;
  z-index: 0;
  background: radial-gradient(ellipse 52% 42% at 50% 50%, rgba(var(--ember-rgb), 0.65) 0%, rgba(var(--ember-rgb), 0.1) 52%, transparent 74%);
  filter: blur(52px);
  animation: origin-bloom-breathe 14s ease-in-out infinite;
}
@keyframes origin-bloom-breathe {
  0%, 100% { opacity: 0.38; transform: scale(0.9); }
  50%      { opacity: 0.65; transform: scale(1.14); }
}
.origin__inscription-wrap {
  position: relative;
  z-index: 1;
  display: inline-block;
  max-width: 38ch;
}
.origin__inscription {
  position: relative;
  z-index: 1;
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 400;
  font-size: clamp(1.15rem, 1.9vw, 1.45rem);
  line-height: 1.55;
  letter-spacing: -0.004em;
  color: var(--ink-soft);
  margin: 0;
}
.close__signup {
  position: relative;
  z-index: 2;
  min-width: 0;
}
.close__signup h2 {
  font-size: clamp(1.65rem, 2.5vw, 2.1rem);
  line-height: 1.1;
  max-width: 14ch;
  color: var(--ink-luminous);
}

/* =============================================================
   CASE ARCHIVE — proof, lower, mineral-lifted
   ============================================================= */
.archive {
  padding: var(--space-7) 0 var(--space-8);
  border-top: 1px solid var(--line-faint);
  background: var(--bg-surface);
  position: relative;
  overflow-x: clip;
  overflow-y: visible;
  isolation: isolate;
}
/* Mineral record — cool aurora rising from below */
.archive::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 82% 46% at 50% 108%, var(--slate-bloom), transparent 66%),
    radial-gradient(ellipse 48% 32% at 18% 18%, var(--slate-deeper), transparent 74%);
  pointer-events: none;
  opacity: 0.68;
}
.archive__inner {
  position: relative;
  z-index: 2;
  max-width: var(--container-wide);
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 3rem);
  min-width: 0;
}
.archive__head {
  display: grid;
  grid-template-columns: minmax(0, 0.5fr) minmax(0, 0.5fr);
  gap: clamp(1.5rem, 4vw, 4rem);
  align-items: end;
  margin-bottom: var(--space-5);
  padding-bottom: var(--space-4);
  border-bottom: 1px solid var(--line-faint);
}
.archive__head h2 {
  font-size: clamp(2rem, 3.4vw, 2.6rem);
  margin: 0;
  letter-spacing: -0.02em;
  color: var(--ink-luminous);
}
.archive__stamp {
  font-family: var(--font-mono);
  font-size: 0.7rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ink-muted);
  text-align: right;
}
.archive__stamp em { font-style: normal; color: var(--ink-secondary); }

.archive__rubric {
  margin: 0 0 var(--space-4);
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--line-soft);
  background: rgba(var(--bg-elevated-rgb), 0.22);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}
.archive__rubric-lead {
  margin: 0 0 var(--space-3);
  font-family: var(--font-display);
  font-size: clamp(1rem, 1.2vw, 1.12rem);
  line-height: 1.5;
  color: #F2E8DC;
}
.archive__rubric-scale {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(0.75rem, 2vw, 1.25rem);
  padding-top: var(--space-2);
  border-top: 1px solid var(--line-faint);
}
.archive__rubric-end {
  font-family: var(--font-display);
  font-size: clamp(0.9375rem, 1.1vw, 1.05rem);
  line-height: 1.45;
  color: rgba(242, 232, 220, 0.92);
}
.archive__rubric-end strong {
  display: inline-block;
  font-family: var(--font-mono);
  font-weight: 500;
  font-size: 1.05rem;
  letter-spacing: 0.06em;
  color: var(--ink-luminous);
  margin-right: 0.35rem;
}
.archive__rubric-end--low strong {
  color: rgba(180, 192, 210, 0.95);
}
.archive__rubric-end--high strong {
  color: var(--ember-soft);
}

.archive__ledger-scroll {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.archive__ledger {
  margin: var(--space-3) 0 var(--space-5);
  border-top: 1px solid var(--line-soft);
  border-bottom: 1px solid var(--line-soft);
}
.ledger__head, .record {
  display: grid;
  grid-template-columns: 8rem 5.5rem 1fr 11rem 4.5rem;
  gap: 1rem;
  padding: 0.85rem 0.5rem;
  font-family: var(--font-mono);
  font-size: 0.7rem;
  letter-spacing: 0.06em;
  align-items: baseline;
  border-bottom: 1px solid var(--line-faint);
}
.ledger__head {
  font-size: 0.8125rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.92);
  border-bottom: 1px solid var(--line-soft);
}
.record:last-child { border-bottom: none; }
.record:hover { background: rgba(40,58,85,0.4); }
.record__date  { color: rgba(180, 192, 210, 0.95); }
.record__id    { color: var(--ink-primary); letter-spacing: 0.12em; }
.record__title {
  font-family: var(--font-display);
  font-size: 1.05rem;
  letter-spacing: -0.005em;
  color: var(--ink-primary);
  text-transform: none;
  min-width: 0;
  overflow-wrap: break-word;
}
.record__type  { color: rgba(180, 192, 210, 0.92); text-transform: uppercase; letter-spacing: 0.16em; }
.record__delta {
  color: var(--ink-soft);
  font-family: var(--font-display);
  font-size: 1.1rem;
  text-transform: none;
  text-align: right;
}
.record--hypothesis .record__delta { color: var(--ember-soft); }
.record--hint { color: rgba(180, 192, 210, 0.9); font-style: italic; }
.record--hint .record__id { color: rgba(180, 192, 210, 0.92); }

.archive__measure {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(1rem, 3vw, 2.25rem);
  padding: var(--space-4) 0;
  border-bottom: 1px solid var(--line-faint);
  margin-bottom: var(--space-4);
}
.archive__measure--primary {
  grid-template-columns: repeat(2, 1fr);
  margin-bottom: 0;
  padding-bottom: var(--space-2);
  border-bottom: none;
}
.archive__measure .stat {
  font-family: var(--font-mono);
  font-size: 0.64rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ink-muted);
}
.archive__measure--primary .stat--phrase {
  font-size: 0.875rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.95);
  line-height: 1.45;
}
.archive__measure--primary .stat__num {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: 2.03rem;
  letter-spacing: -0.02em;
  color: var(--ink-luminous);
  text-transform: none;
  margin-right: 0.2rem;
}
.archive__measure .stat strong {
  display: block;
  font-family: var(--font-display);
  font-weight: 400;
  font-size: 2.15rem;
  letter-spacing: -0.02em;
  color: var(--ink-luminous);
  text-transform: none;
  margin-bottom: 0.2rem;
  line-height: 1;
}
.archive__measure .stat--ember strong { color: var(--ember-soft); }

/* Pass 10 — featured case preview */
.archive__featured {
  margin-bottom: var(--space-5);
  padding: var(--space-4);
  border: 1px solid var(--line-soft);
  background: rgba(var(--bg-elevated-rgb), 0.15);
  min-width: 0;
}
.archive__featured-body {
  display: grid;
  gap: var(--space-3);
}
.archive__featured-label {
  display: block;
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.92);
  margin-bottom: 0.65rem;
}
.archive__featured-title {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.35rem, 2vw, 1.65rem);
  letter-spacing: -0.012em;
  color: var(--ink-luminous);
  margin: 0 0 var(--space-4);
  line-height: 1.2;
  overflow-wrap: break-word;
  word-break: break-word;
}
.archive__featured-prompts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-3);
}
.archive__prompt-card {
  padding: var(--space-3);
  border: 1px solid var(--line-faint);
  background: rgba(var(--bg-deep-rgb), 0.35);
}
.archive__prompt-label {
  display: block;
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.92);
  margin-bottom: 0.55rem;
}
.archive__prompt p {
  font-size: 0.98rem;
  line-height: 1.5;
  color: var(--ink-soft);
  margin: 0;
}
.archive__finding-card {
  padding: var(--space-3) var(--space-4);
  border: 1px solid rgba(var(--ember-rgb), 0.28);
  background: rgba(var(--bg-elevated-rgb), 0.4);
  margin-bottom: 0;
}
.archive__finding {
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--line-soft);
  background: rgba(var(--bg-elevated-rgb), 0.35);
  margin-bottom: var(--space-3);
}
.archive__finding-label {
  display: inline-block;
  font-family: var(--font-mono);
  font-size: 0.64rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ember-soft);
  margin-bottom: 0.75rem;
  padding: 0.35rem 0.7rem;
  border: 1px solid rgba(var(--ember-rgb), 0.55);
  border-radius: 999px;
  line-height: 1;
}
.archive__finding p {
  font-size: 0.98rem;
  line-height: 1.55;
  color: var(--ink-soft);
  margin: 0;
}
.archive__featured .archive__featured-link {
  margin-top: var(--space-3);
}
.archive__featured-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--font-mono);
  font-size: 0.72rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-primary);
  border-bottom: 1px solid var(--line-soft);
  padding-bottom: 0.25rem;
}
.archive__featured-link:hover { color: var(--ember-soft); border-bottom-color: var(--ember); }
.archive__featured-link .arrow { transition: transform .35s ease; }
.archive__featured-link:hover .arrow { transform: translateX(4px); }
@media (max-width: 900px) {
  .archive__head { grid-template-columns: 1fr; align-items: start; }
  .archive__inner { padding-inline: clamp(1rem, 4vw, 1.25rem); }
  .archive__measure--primary { grid-template-columns: 1fr; gap: var(--space-3); }
  .archive__rubric { padding: var(--space-3); }
  .archive__rubric-scale { grid-template-columns: 1fr; gap: var(--space-2); }
  .archive__featured { padding: var(--space-3); }
  .archive__featured-prompts { grid-template-columns: 1fr; }
  .archive__prompt p,
  .archive__finding p { overflow-wrap: break-word; }
  .archive__ledger-scroll {
    margin-inline: 0;
    padding-inline: 0;
    overflow-x: visible;
    width: 100%;
  }
  .archive__ledger {
    min-width: 0;
    width: 100%;
  }
  .ledger__head { display: none; }
  .record {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
      "id    delta"
      "title title"
      "date  type";
    gap: 0.4rem 0.75rem;
    padding: 1rem 0;
    font-size: 0.8125rem;
    align-items: start;
  }
  .record__id {
    grid-area: id;
    font-size: 0.75rem;
    letter-spacing: 0.1em;
    overflow-wrap: anywhere;
  }
  .record__title {
    grid-area: title;
    font-size: 1rem;
    line-height: 1.35;
    overflow-wrap: break-word;
    word-break: break-word;
  }
  .record__date {
    grid-area: date;
    font-size: 0.75rem;
    color: rgba(180, 192, 210, 0.95);
  }
  .record__type {
    grid-area: type;
    text-align: right;
    font-size: 0.6875rem;
    letter-spacing: 0.12em;
    overflow-wrap: anywhere;
  }
  .record__delta {
    grid-area: delta;
    font-size: 1.05rem;
    text-align: right;
    white-space: nowrap;
  }
}

@media (max-width: 700px) {
  .archive__measure { grid-template-columns: repeat(2, 1fr); }
}

.archive__foot {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1.5rem;
  flex-wrap: wrap;
}
.archive__cta {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--font-mono);
  font-size: 0.74rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-primary);
  border-bottom: 1px solid var(--line-soft);
  padding-bottom: 0.3rem;
}
.archive__cta:hover { color: var(--ember-soft); border-bottom-color: var(--ember); }
.archive__cta .arrow { transition: transform .35s ease; }
.archive__cta:hover .arrow { transform: translateX(4px); }
.archive__next { font-family: var(--font-mono); font-size: 0.8125rem; color: rgba(180, 192, 210, 0.92); letter-spacing: 0.16em; text-transform: uppercase; }
.archive__next::before { content: "// "; color: rgba(180, 192, 210, 0.9); }

/* === homepage archive preview — aligned with Case Archive page === */
.archive--home-preview {
  --hp-arc-content-width: 100%;
}
.archive--home-preview .archive__inner {
  display: grid;
  gap: 0;
}
.archive--home-preview .archive__head {
  grid-template-columns: 1fr;
  align-items: start;
  margin-bottom: var(--space-5);
  padding-bottom: var(--space-4);
  border-bottom: 1px solid rgba(var(--ember-rgb), 0.16);
  box-shadow: 0 2px 0 rgba(var(--ember-rgb), 0.08);
}
.archive--home-preview .archive__head h2 {
  font-size: clamp(1.75rem, 2.75vw, 2.125rem);
  font-weight: 500;
  letter-spacing: -0.018em;
  line-height: 1.22;
  color: rgba(242, 232, 220, 0.98);
}
.archive--home-preview .hp-arc-intro {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-3);
  align-items: start;
  width: var(--hp-arc-content-width);
  margin-bottom: var(--space-5);
}
.archive--home-preview .hp-arc-stat-strip {
  margin: 0;
  max-width: none;
  width: 100%;
  padding: var(--space-2) 0 var(--space-3);
  border: none;
  border-bottom: 1px solid rgba(var(--ember-rgb), 0.2);
  background: transparent;
}
.archive--home-preview .hp-arc-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: baseline;
  gap: var(--space-3) clamp(var(--space-4), 3vw, var(--space-5));
  margin: 0;
  padding: 0;
  list-style: none;
}
.archive--home-preview .hp-arc-metrics__item {
  display: inline-flex;
  align-items: baseline;
  gap: 0.55rem;
  white-space: nowrap;
}
.archive--home-preview .hp-arc-metrics__value {
  font-family: var(--font-mono);
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.2;
  color: var(--ember-soft);
}
.archive--home-preview .hp-arc-metrics__label {
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.35;
  text-transform: lowercase;
  color: rgba(212, 207, 194, 0.92);
}
.archive--home-preview .hp-arc-rubric {
  margin: 0;
  max-width: none;
  width: 100%;
  padding: var(--space-3) var(--space-3);
  border: 1px solid var(--line-faint);
  background: rgba(var(--bg-base-rgb), 0.22);
}
.archive--home-preview .hp-arc-rubric__lead {
  margin: 0 0 var(--space-2);
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.58;
  color: var(--ink-soft);
}
.archive--home-preview .hp-arc-rubric__scale {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-2);
  padding-top: var(--space-2);
  border-top: 1px solid var(--line-faint);
}
.archive--home-preview .hp-arc-rubric__end {
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.5;
  color: rgba(212, 207, 194, 0.92);
}
.archive--home-preview .hp-arc-rubric__end strong {
  font-family: var(--font-mono);
  font-weight: 500;
  font-size: 0.875rem;
  letter-spacing: 0.04em;
  color: var(--ink-luminous);
  margin-right: 0.3rem;
}
.archive--home-preview .hp-arc-rubric__end--high strong {
  color: var(--ember-soft);
}
.archive--home-preview .hp-arc-featured {
  margin: 0 0 var(--space-6);
  max-width: none;
  width: var(--hp-arc-content-width);
  padding: clamp(var(--space-4), 3vw, var(--space-5)) clamp(var(--space-3), 3.5vw, var(--space-5));
  border: 1px solid var(--line-soft);
  border-left: 3px solid rgba(var(--ember-rgb), 0.36);
  background: rgba(var(--bg-base-rgb), 0.22);
}
.archive--home-preview .hp-arc-featured__label {
  display: block;
  margin-bottom: var(--space-2);
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(var(--ember-rgb), 0.78);
}
.archive--home-preview .hp-arc-featured__title {
  margin: 0 0 var(--space-4);
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 2.4vw, 1.875rem);
  font-weight: 500;
  letter-spacing: -0.012em;
  line-height: 1.25;
  color: var(--ink-luminous);
}
.archive--home-preview .hp-arc-featured__meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-3);
  margin: 0 0 var(--space-4);
  padding: var(--space-3) 0;
  border-top: 1px solid var(--line-faint);
  border-bottom: 1px solid var(--line-faint);
}
.archive--home-preview .hp-arc-featured__meta-item {
  margin: 0;
}
.archive--home-preview .hp-arc-featured__meta-item dt {
  margin: 0 0 0.2rem;
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(var(--ember-rgb), 0.72);
}
.archive--home-preview .hp-arc-featured__meta-item dd {
  margin: 0;
  font-family: var(--font-mono);
  font-size: 0.9375rem;
  color: rgba(212, 207, 194, 0.94);
}
.archive--home-preview .hp-arc-featured__meta-item:nth-child(3) dd {
  color: var(--ember-soft);
  font-weight: 500;
}
.archive--home-preview .hp-arc-featured__body {
  display: grid;
  gap: var(--space-3);
}
.archive--home-preview .hp-arc-featured__prompts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(var(--space-3), 2.5vw, var(--space-4));
}
.archive--home-preview .hp-arc-prompt-field {
  padding: var(--space-3);
  border: 1px solid var(--line-faint);
  background: rgba(var(--bg-deep-rgb), 0.28);
}
.archive--home-preview .hp-arc-prompt-field__label {
  display: block;
  margin-bottom: var(--space-2);
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(var(--ember-rgb), 0.72);
}
.archive--home-preview .hp-arc-prompt-field p {
  margin: 0;
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.58;
  color: var(--ink-soft);
}
.archive--home-preview .hp-arc-featured__finding {
  padding: var(--space-3);
  border: 1px solid rgba(var(--ember-rgb), 0.22);
  border-left: 2px solid rgba(var(--ember-rgb), 0.36);
  background: rgba(var(--bg-surface-rgb), 0.12);
}
.archive--home-preview .hp-arc-featured__finding-label {
  display: block;
  margin-bottom: var(--space-2);
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ember-soft);
}
.archive--home-preview .hp-arc-featured__finding p {
  margin: 0;
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--ink-soft);
}
.archive--home-preview .hp-arc-featured__link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: var(--space-3);
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(212, 207, 194, 0.94);
  border-bottom: 1px solid var(--line-soft);
  padding-bottom: 0.25rem;
}
.archive--home-preview .hp-arc-featured__link:hover {
  color: var(--ember-soft);
  border-bottom-color: var(--ember);
}
.archive--home-preview .hp-arc-featured__link .arrow {
  transition: transform 0.35s ease;
}
.archive--home-preview .hp-arc-featured__link:hover .arrow {
  transform: translateX(4px);
}
.archive--home-preview .hp-arc-ledger-wrap {
  max-width: none;
  width: var(--hp-arc-content-width);
  margin-bottom: var(--space-5);
}
.archive--home-preview .hp-arc-ledger {
  --hp-arc-ledger-pad-x: clamp(1.25rem, 2.5vw, 1.75rem);
  --hp-arc-ledger-pad-y: 1.25rem;
  --hp-arc-ledger-cols: 7.25rem 6rem minmax(0, 1.9fr) 10.75rem 5.25rem;
  border: 1px solid var(--line-soft);
  border-top: 1px solid rgba(var(--ember-rgb), 0.22);
  border-left: 2px solid rgba(var(--ember-rgb), 0.24);
  background: rgba(var(--bg-base-rgb), 0.25);
  overflow-x: clip;
  overflow-y: visible;
}
.archive--home-preview .hp-arc-ledger__head {
  display: grid;
  grid-template-columns: var(--hp-arc-ledger-cols);
  gap: clamp(0.9rem, 1.7vw, 1.4rem);
  padding: 1rem var(--hp-arc-ledger-pad-x);
  align-items: center;
  border-bottom: 1px solid var(--line-soft);
}
.archive--home-preview .hp-arc-record--held,
.archive--home-preview .hp-arc-record__link {
  display: grid;
  grid-template-columns: var(--hp-arc-ledger-cols);
  gap: clamp(0.9rem, 1.7vw, 1.4rem);
  padding: var(--hp-arc-ledger-pad-y) var(--hp-arc-ledger-pad-x);
  align-items: start;
  border-bottom: 1px solid var(--line-faint);
  min-height: 4.5rem;
}
.archive--home-preview .hp-arc-record--public {
  display: block;
  border-bottom: none;
}
.archive--home-preview .hp-arc-record__link {
  width: 100%;
  margin: 0;
  color: inherit;
  text-decoration: none;
  border: none;
  cursor: pointer;
  transition: background 0.2s ease;
}
.archive--home-preview .hp-arc-ledger__head {
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.35;
  color: rgba(var(--ember-rgb), 0.78);
  background: rgba(var(--bg-surface-rgb), 0.28);
  box-shadow: inset 0 -1px 0 rgba(var(--ember-rgb), 0.1);
}
.archive--home-preview .hp-arc-ledger__head > :first-child,
.archive--home-preview .hp-arc-record__date {
  padding-left: 0.2rem;
}
.archive--home-preview .hp-arc-ledger__gap-col,
.archive--home-preview .hp-arc-record__gap {
  padding-right: 0.45rem;
}
.archive--home-preview .hp-arc-ledger__gap-col {
  text-align: right;
}
.archive--home-preview .hp-arc-ledger__list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.archive--home-preview .hp-arc-record {
  margin: 0;
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  letter-spacing: 0.04em;
  line-height: 1.35;
}
.archive--home-preview .hp-arc-record--public {
  padding: 0;
}
.archive--home-preview .hp-arc-record--held {
  padding: var(--hp-arc-ledger-pad-y) var(--hp-arc-ledger-pad-x);
}
.archive--home-preview .hp-arc-record:last-child {
  border-bottom: none;
}
.archive--home-preview .hp-arc-record__main {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  min-width: 0;
  padding: 0.2rem 0 0.1rem;
}
.archive--home-preview .hp-arc-record__status {
  display: block;
  margin: 0;
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.35;
  color: rgba(180, 192, 210, 0.72);
}
.archive--home-preview .hp-arc-record--public .hp-arc-record__status {
  color: rgba(var(--ember-rgb), 0.72);
}
.archive--home-preview .hp-arc-record--held .hp-arc-record__status {
  color: rgba(180, 192, 210, 0.65);
}
.archive--home-preview .hp-arc-record--tail .hp-arc-record__status {
  color: rgba(180, 192, 210, 0.58);
  font-style: italic;
}
.archive--home-preview .hp-arc-record__date {
  color: rgba(180, 192, 210, 0.88);
  font-size: 0.8125rem;
  line-height: 1.4;
  padding-top: 0.35rem;
}
.archive--home-preview .hp-arc-record__id {
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(212, 207, 194, 0.92);
  font-size: 0.8125rem;
  line-height: 1.4;
  padding-top: 0.35rem;
}
.archive--home-preview .hp-arc-record__title {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(1rem, 1.2vw, 1.125rem);
  font-weight: 500;
  letter-spacing: -0.005em;
  text-transform: none;
  color: var(--ink-luminous);
  line-height: 1.42;
}
.archive--home-preview .hp-arc-record__arrow {
  margin-left: 0.15rem;
  font-size: 0.75rem;
  color: rgba(var(--ember-rgb), 0.55);
  transition: transform 0.2s ease, color 0.2s ease;
}
.archive--home-preview .hp-arc-record--public:hover {
  background: rgba(var(--ember-rgb), 0.07);
}
.archive--home-preview .hp-arc-record--public:hover .hp-arc-record__title {
  color: var(--ember-soft);
}
.archive--home-preview .hp-arc-record--public:hover .hp-arc-record__arrow {
  color: var(--ember-soft);
  transform: translateX(2px);
}
.archive--home-preview .hp-arc-record__type {
  font-size: 0.8125rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.4;
  color: rgba(180, 192, 210, 0.85);
  padding-top: 0.35rem;
}
.archive--home-preview .hp-arc-record__type-tag {
  color: rgba(180, 192, 210, 0.75);
}
.archive--home-preview .hp-arc-record__gap {
  text-align: right;
  font-family: var(--font-mono);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.4;
  color: rgba(212, 207, 194, 0.9);
  padding-top: 0.35rem;
}
.archive--home-preview .hp-arc-record--hypothesis .hp-arc-record__id,
.archive--home-preview .hp-arc-record--lead .hp-arc-record__id,
.archive--home-preview .hp-arc-record--hypothesis .hp-arc-record__gap,
.archive--home-preview .hp-arc-record--lead .hp-arc-record__gap {
  color: var(--ember-soft);
}
.archive--home-preview .hp-arc-record--lead .hp-arc-record__link {
  background: rgba(var(--ember-rgb), 0.04);
  box-shadow: inset 3px 0 0 rgba(var(--ember-rgb), 0.28);
}
.archive--home-preview .hp-arc-record--control,
.archive--home-preview .hp-arc-record--held {
  background: rgba(var(--bg-surface-rgb), 0.06);
  box-shadow: inset 3px 0 0 rgba(180, 192, 210, 0.18);
}
.archive--home-preview .hp-arc-record--control .hp-arc-record__id,
.archive--home-preview .hp-arc-record--held .hp-arc-record__id {
  color: rgba(180, 192, 210, 0.78);
}
.archive--home-preview .hp-arc-record--control .hp-arc-record__title,
.archive--home-preview .hp-arc-record--held .hp-arc-record__title {
  font-family: var(--font-display);
  font-size: 0.9375rem;
  font-weight: 450;
  color: rgba(212, 207, 194, 0.88);
}
.archive--home-preview .hp-arc-record--control .hp-arc-record__gap,
.archive--home-preview .hp-arc-record--held .hp-arc-record__gap {
  color: rgba(180, 192, 210, 0.78);
}
.archive--home-preview .hp-arc-record--continuation,
.archive--home-preview .hp-arc-record--tail {
  border-top: 1px dashed rgba(var(--ember-rgb), 0.24);
  background: rgba(var(--bg-base-rgb), 0.16);
}
.archive--home-preview .hp-arc-record--continuation.hp-arc-record--tail {
  padding: 0;
  min-height: 0;
  border-bottom: none;
}
.archive--home-preview .hp-arc-record__tail-band {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1.4fr) auto;
  gap: 0.65rem clamp(var(--space-3), 2vw, var(--space-4));
  align-items: center;
  padding: 1.15rem var(--hp-arc-ledger-pad-x);
}
.archive--home-preview .hp-arc-record__tail-label {
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.35;
  color: rgba(180, 192, 210, 0.78);
  font-style: italic;
}
.archive--home-preview .hp-arc-record__tail-count {
  font-family: var(--font-mono);
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: 1.35;
  color: rgba(var(--ember-rgb), 0.72);
  white-space: nowrap;
}
.archive--home-preview .hp-arc-record__tail-note {
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: -0.005em;
  line-height: 1.38;
  color: rgba(212, 207, 194, 0.9);
}
.archive--home-preview .hp-arc-record__tail-type {
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.35;
  color: rgba(180, 192, 210, 0.82);
  text-align: right;
  white-space: nowrap;
  padding-right: 0.45rem;
}
.archive--home-preview .archive__foot {
  max-width: none;
  width: var(--hp-arc-content-width);
}
.archive--home-preview .archive__cta {
  font-size: 0.8125rem;
  letter-spacing: 0.04em;
  color: rgba(212, 207, 194, 0.94);
}

@media (max-width: 900px) {
  .archive--home-preview .hp-arc-metrics {
    grid-template-columns: 1fr;
    gap: var(--space-2);
  }
  .archive--home-preview .hp-arc-intro {
    grid-template-columns: 1fr;
    gap: var(--space-3);
    margin-bottom: var(--space-4);
  }
  .archive--home-preview .hp-arc-featured__meta {
    grid-template-columns: 1fr;
  }
  .archive--home-preview .hp-arc-rubric__scale {
    grid-template-columns: 1fr;
  }
  .archive--home-preview .hp-arc-featured__prompts {
    grid-template-columns: 1fr;
  }
  .archive--home-preview .hp-arc-ledger__head {
    display: none;
  }
  .archive--home-preview .hp-arc-ledger {
    --hp-arc-ledger-pad-x: var(--space-3);
  }
  .archive--home-preview .hp-arc-record--held,
  .archive--home-preview .hp-arc-record__link {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
      "status gap"
      "title title"
      "meta  type";
    gap: 0.55rem 0.85rem;
    padding: 1.15rem var(--hp-arc-ledger-pad-x);
    align-items: start;
    min-height: 0;
  }
  .archive--home-preview .hp-arc-record__status { grid-area: status; }
  .archive--home-preview .hp-arc-record__gap {
    grid-area: gap;
    padding-top: 0;
    padding-right: 0.2rem;
  }
  .archive--home-preview .hp-arc-record__main {
    grid-area: title;
    gap: 0.55rem;
    padding: 0.15rem 0 0.25rem;
  }
  .archive--home-preview .hp-arc-record__date { display: none; }
  .archive--home-preview .hp-arc-record__id {
    grid-area: meta;
    font-size: 0.8125rem;
    padding-top: 0;
  }
  .archive--home-preview .hp-arc-record__type {
    grid-area: type;
    text-align: right;
    font-size: 0.8125rem;
    padding-top: 0;
  }
  .archive--home-preview .hp-arc-record__title {
    font-size: 1.05rem;
    line-height: 1.45;
  }
  .archive--home-preview .hp-arc-record__tail-band {
    grid-template-columns: 1fr auto;
    grid-template-areas:
      "label count"
      "note  type";
    gap: 0.5rem 0.85rem;
    padding: 1.15rem var(--hp-arc-ledger-pad-x);
  }
  .archive--home-preview .hp-arc-record__tail-label { grid-area: label; }
  .archive--home-preview .hp-arc-record__tail-count { grid-area: count; text-align: right; }
  .archive--home-preview .hp-arc-record__tail-note { grid-area: note; }
  .archive--home-preview .hp-arc-record__tail-type { grid-area: type; }
}

/* =============================================================
   FIELD NOTES — signup within close section
   ============================================================= */
.field-notes__caption {
  font-family: var(--font-mono);
  font-size: 0.875rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.95);
  margin-top: var(--space-3);
}
.field-notes__recent {
  margin-top: var(--space-4);
  padding-top: var(--space-3);
  border-top: 1px solid var(--line-faint);
}
.field-notes__recent-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.55rem;
}
.field-notes__recent-list a {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 400;
  font-size: 0.95rem;
  line-height: 1.35;
  color: rgba(180, 192, 210, 0.95);
  border: none;
  padding: 0;
}
.field-notes__recent-list a:hover { color: var(--ink-soft); border: none; }

.close .subscribe {
  display: flex;
  align-items: baseline;
  width: 100%;
  max-width: 100%;
  gap: 0.5rem;
  margin-top: var(--space-2);
  padding: 0;
  border: none;
  background: transparent;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.subscribe {
  display: flex;
  align-items: stretch;
  border-bottom: 1px solid var(--line-strong);
  padding-bottom: 0.5rem;
}
.subscribe input[type="email"] {
  flex: 1;
  background: transparent;
  border: none;
  color: var(--ink-luminous);
  font-family: var(--font-body);
  font-size: 1rem;
  padding: 0.75rem 0;
  outline: none;
  min-width: 0;
}
.subscribe input::placeholder { color: var(--ink-muted); }
.subscribe button {
  background: transparent;
  border: none;
  color: var(--ink-primary);
  font-family: var(--font-mono);
  font-size: 0.74rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  cursor: pointer;
  padding: 0.5rem 0.5rem 0.5rem 1rem;
  flex-shrink: 0;
  white-space: nowrap;
  align-self: flex-end;
  transition: color .25s ease;
}
.close .subscribe input[type="email"] {
  flex: 1;
  min-width: 0;
  padding: 0.85rem 0.9rem;
  border: 1px solid var(--line-soft);
  border-radius: 2px;
  background: var(--bg-glass);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: border-color .3s ease, background .3s ease;
}
.close .subscribe input[type="email"]:focus {
  border-color: rgba(var(--ember-rgb), 0.45);
  background: rgba(40, 58, 85, 0.55);
  outline: none;
}
.close .subscribe button {
  background: rgba(var(--ember-rgb), 0.3);
  border: 1px solid rgba(var(--ember-rgb), 0.52);
  border-radius: 2px;
  color: var(--ink-luminous);
  font-size: 0.74rem;
  letter-spacing: 0.14em;
  padding: 0.7rem 1.1rem;
  align-self: auto;
  transition: background .25s ease, border-color .25s ease, color .25s ease;
}
.close .subscribe button:hover {
  background: rgba(var(--ember-rgb), 0.42);
  border-color: var(--ember-soft);
  color: var(--ink-luminous);
}
.close .subscribe button:focus-visible {
  outline: 2px solid rgba(var(--ember-rgb), 0.55);
  outline-offset: 2px;
}
.subscribe button:hover { color: var(--ember-soft); }
.subscribe__msg {
  font-family: var(--font-mono);
  font-size: 0.7rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ember-soft);
  margin-top: 0.75rem;
  opacity: 0;
  transition: opacity .4s ease;
}
.subscribe__msg.is-visible { opacity: 1; }
@media (max-width: 760px) {
  .close__grid { grid-template-columns: 1fr; gap: var(--space-5); }
  .close__origin { padding: var(--space-2) 0 var(--space-4); }
  .origin__bloom {
    inset: -25% -10%;
    filter: blur(44px);
    opacity: 0.42;
  }
  .origin__inscription-wrap { max-width: min(38ch, 100%); }
  .close .subscribe {
    flex-direction: column;
    align-items: stretch;
    gap: 0.5rem;
  }
  .close .subscribe input[type="email"] {
    padding: 0.65rem 0.85rem;
  }
  .close .subscribe button {
    align-self: flex-start;
    width: auto;
    max-width: 100%;
    padding: 0.65rem 1rem;
  }
  .field-notes__recent {
    margin-top: var(--space-3);
  }
  .field-notes__recent-list a {
    font-size: 0.9rem;
  }
}

/* =============================================================
   PASS 5 — AURORA: section seams & ambient motion
   Soft atmospheric joins between sections; sparse drift only.
   ============================================================= */
@keyframes aurora-descend {
  0%   { transform: translateY(-1.5%); opacity: 0.72; }
  100% { transform: translateY(3%);    opacity: 0.88; }
}
@keyframes aurora-distant {
  0%, 100% { opacity: 0.52; }
  50%      { opacity: 0.72; }
}
@keyframes aurora-transmit {
  0%, 100% { opacity: 0.4; }
  50%      { opacity: 0.62; }
}

/* Atmospheric edge bleeds — 8–15% fade at section boundaries */
.hero::after,
.bridge::after,
.value::after,
.roadmap::after,
.compounding::after,
.audiences::after,
.gap::after,
.categories::after,
.archive::after,
.close::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
}

.hero::after,
.bridge::after,
.value::after,
.roadmap::after,
.categories::after,
.close::after {
  background:
    linear-gradient(180deg, rgba(var(--bg-deep-rgb), 0.52) 0%, transparent 16%),
    linear-gradient(0deg, rgba(var(--bg-deep-rgb), 0.58) 0%, transparent 16%);
}

.compounding::after,
.archive::after {
  background:
    linear-gradient(180deg, rgba(var(--bg-deep-rgb), 0.46) 0%, rgba(var(--bg-base-rgb), 0.18) 12%, transparent 16%),
    linear-gradient(0deg, rgba(var(--bg-surface-rgb), 0.42) 0%, rgba(var(--bg-base-rgb), 0.12) 11%, transparent 15%);
}

.audiences::after {
  background:
    linear-gradient(180deg, rgba(var(--bg-surface-rgb), 0.36) 0%, transparent 14%),
    linear-gradient(0deg, rgba(var(--bg-deep-rgb), 0.52) 0%, transparent 15%);
}

.gap::after {
  background:
    linear-gradient(180deg, rgba(var(--bg-base-rgb), 0.55) 0%, rgba(var(--bg-deep-rgb), 0.28) 10%, transparent 16%),
    linear-gradient(0deg, rgba(var(--bg-deep-rgb), 0.68) 0%, rgba(var(--bg-base-rgb), 0.22) 10%, transparent 14%);
}

.bridge::after {
  background:
    linear-gradient(180deg, rgba(var(--bg-deep-rgb), 0.48) 0%, transparent 14%),
    linear-gradient(0deg, rgba(var(--bg-deep-rgb), 0.62) 0%, rgba(var(--bg-surface-rgb), 0.14) 11%, transparent 15%);
}

.roadmap::after {
  background:
    linear-gradient(180deg, rgba(var(--bg-deep-rgb), 0.44) 0%, rgba(var(--bg-surface-rgb), 0.2) 12%, transparent 16%),
    linear-gradient(0deg, rgba(var(--bg-surface-rgb), 0.38) 0%, transparent 14%);
}

@media (max-width: 768px) {
  body { background-attachment: scroll; }
  .field-noise::before,
  .field-noise::after {
    filter: blur(72px);
    opacity: 0.28;
    animation: none;
  }
  .hero::before,
  .value::before,
  .close::before,
  .aurora-field__layer {
    animation: none;
  }
  .value__beats::after { left: 0.72rem; }
  .value__beat-dot:not(.is-active) {
    opacity: 0.3;
    box-shadow: none;
  }
  .roadmap__item p { max-width: none; }
  .roadmap__title { max-width: none; }
  .bridge__thesis { max-width: none; }
  .divergence__path { transition-duration: 1.9s; }
  .divergence.is-drawn .divergence__path--drift { transition-delay: 0.15s; }
}

/* =============================================================
   FOOTER
   ============================================================= */
.site-footer {
  background: var(--bg-deep);
  border-top: 1px solid var(--line-faint);
  padding: var(--space-5) 0 var(--space-4);
  color: var(--ink-secondary);
  position: relative;
  z-index: 1;
}
.site-footer__inner {
  max-width: var(--container-wide);
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 3rem);
  display: grid;
  gap: var(--space-3);
}
.site-footer__about {
  font-family: var(--font-display);
  font-size: 1rem;
  color: var(--ink-soft);
  max-width: 50ch;
}
.site-footer__links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.5rem;
  font-size: 0.88rem;
}
.site-footer__links a { color: rgba(180, 192, 210, 0.95); border: none; }
.site-footer__links a:hover { color: var(--ember-soft); }
.site-footer__meta {
  font-family: var(--font-mono);
  font-size: 0.875rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.95);
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
  align-items: center;
  padding-top: var(--space-3);
  border-top: 1px solid var(--line-faint);
}

/* Scroll reveal */
.reveal,
.reveal-l,
.reveal-r {
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.6s cubic-bezier(.2,.7,.2,1), transform 0.6s cubic-bezier(.2,.7,.2,1);
  transition-delay: var(--reveal-delay, 0ms);
}
.reveal.is-visible,
.reveal-l.is-visible,
.reveal-r.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.reveal--inscription {
  transition-duration: 900ms;
  transition-timing-function: cubic-bezier(.16,.8,.24,1);
}

/* Pass 12 — section entry stagger (label → heading → body → support) */
[data-reveal-section] .reveal {
  opacity: 0;
  transform: translateY(12px);
  transition:
    opacity 0.6s cubic-bezier(.2,.7,.2,1),
    transform 0.6s cubic-bezier(.2,.7,.2,1);
}
[data-reveal-section] .reveal[data-stagger="label"]   { transition-delay: 0ms; }
[data-reveal-section] .reveal[data-stagger="heading"] { transition-delay: 80ms; }
[data-reveal-section] .reveal[data-stagger="body"]    { transition-delay: 160ms; }
[data-reveal-section] .reveal[data-stagger="support"] { transition-delay: 240ms; }
[data-reveal-section].is-revealed .reveal {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
  .reveal, .reveal-l, .reveal-r { opacity: 1; transform: none; }
  .gap__line--scroll { opacity: 1; transform: none; transition: none; }
  [data-reveal-section] .reveal { opacity: 1; transform: none; transition: none; }
  [data-reveal-section].is-revealed .reveal { opacity: 1; transform: none; }
  .ephemeral-fade {
    opacity: 0.6 !important;
    animation: none !important;
  }
  .ember {
    animation: none !important;
    text-shadow: none !important;
  }
  html { scroll-behavior: auto; }
  .field-noise { display: none; }
  .film-grain { animation: none !important; }
  .section-scene > .aurora-field { opacity: 1 !important; }
  .section-scene > .hero__aurora-focal { opacity: 0.48 !important; }
  .section-scene.bridge::before,
  .section-scene.categories::before,
  .section-scene.value::before { opacity: 1 !important; }
  .section-scene.gap::before { opacity: 0.3 !important; }
  .section-scene.compounding::before { opacity: 0.48 !important; }
  .section-scene.roadmap::before { opacity: 0.75 !important; }
  .section-scene.audiences::before { opacity: 0.45 !important; }
  .section-scene.close::before { opacity: 0.65 !important; }
  .hero__monolith-text::after { animation: none !important; opacity: 0 !important; }
  .hero__meta--instrument::before,
  .hero__meta--instrument::after { opacity: 0.65 !important; }
  .hero__meta--instrument.reveal { opacity: 1; transform: none; }
  .brand .glyph .v-antenna__tip { animation: none !important; opacity: 0.7; }
  .aurora-field__layer { animation: none !important; opacity: 0.55 !important; transform: none !important; filter: blur(48px) !important; }
  .hero .aurora-field__layer { opacity: 0.65 !important; filter: blur(57px) !important; }
  .hero__aurora-focal { animation: none !important; opacity: 0.48 !important; transform: translate(-50%, -50%) !important; }
  .hero__aurora-edge { animation: none !important; opacity: 0.58 !important; transform: none !important; }
  .divergence__path { stroke-dashoffset: 0 !important; }
  .divergence__endpoint,
  .divergence.is-drawn .divergence__label { opacity: 1 !important; }
  .divergence.is-live .divergence__origin-core,
  .divergence.is-live .divergence__endpoint--bot { animation: none !important; }
  .hero__particle { animation: none !important; opacity: 0 !important; }
  .origin__bloom { animation: none !important; opacity: 0.45 !important; transform: none !important; }
  .value__beat-dot,
  .value__beat-dot.is-active { animation: none !important; opacity: 0.85 !important; box-shadow: 0 0 8px rgba(var(--ember-rgb), 0.35) !important; }
  .roadmap__label-dot { animation: none !important; opacity: 0.75 !important; }
  .cat:hover .cat__mark { animation: none !important; }
  .value__beats::after { transform: scaleX(1) !important; }
  .proof-strip--landing .proof-strip__lead .dot {
    animation: none !important;
    opacity: 0.85;
    box-shadow: 0 0 8px var(--ember-glow) !important;
  }
}

:focus-visible { outline: 2px solid var(--ember); outline-offset: 3px; border-radius: 1px; }
.site-header, main, .site-footer { position: relative; z-index: 2; }

/* Inner support pages — v0 static pages */
.page {
  position: relative;
  z-index: 2;
  padding: clamp(5rem, 12vh, 7rem) 0 var(--space-8);
  background: var(--bg-base);
  min-height: 50vh;
}
.page__inner {
  max-width: var(--container-wide);
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 3rem);
}
.page__inner--narrow {
  max-width: var(--container-mid);
}
.page h1 {
  font-family: var(--font-display);
  font-size: clamp(2rem, 3.4vw, 2.75rem);
  letter-spacing: -0.02em;
  color: var(--ink-luminous);
  margin: 0 0 var(--space-4);
}
.page__intro {
  font-family: var(--font-display);
  font-size: clamp(1.05rem, 1.5vw, 1.2rem);
  line-height: 1.5;
  color: var(--ink-soft);
  max-width: 62ch;
  margin: 0 0 var(--space-5);
}
.page__section {
  margin-bottom: var(--space-6);
  padding-top: var(--space-4);
  border-top: 1px solid var(--line-faint);
}
.page__section h2 {
  font-size: clamp(1.35rem, 2vw, 1.65rem);
  letter-spacing: -0.012em;
  color: var(--ink-luminous);
  margin: 0 0 var(--space-3);
}
.page__section p,
.page__section li {
  color: var(--ink-soft);
  max-width: 62ch;
}
.page__section ul {
  margin: 0;
  padding-left: 1.25rem;
}
.page__section li + li {
  margin-top: 0.5em;
}
.page__lede {
  font-family: var(--font-display);
  font-size: clamp(1.25rem, 2.2vw, 1.55rem);
  line-height: 1.4;
  letter-spacing: -0.008em;
  color: #F2E8DC;
  max-width: 44ch;
  margin: 0 0 var(--space-4);
}
.page__cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem 2rem;
  margin-top: var(--space-5);
  padding-top: var(--space-4);
  border-top: 1px solid var(--line-faint);
}
.page__cta-row a,
.page__cta-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--font-mono);
  font-size: 0.74rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-primary);
  border-bottom: 1px solid var(--line-soft);
  padding-bottom: 0.3rem;
}
.page__cta-row a:hover,
.page__cta-link:hover { color: var(--ember-soft); border-bottom-color: var(--ember); }
.page__plate {
  margin: var(--space-3) 0;
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--line-soft);
  background: rgba(var(--bg-elevated-rgb), 0.15);
}
.page__plate-label {
  display: block;
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.92);
  margin-bottom: 0.55rem;
}
.page__meta {
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.95);
  margin-bottom: var(--space-4);
}
.page__meta span + span::before {
  content: " · ";
}
.page__faq dt {
  font-family: var(--font-display);
  font-size: 1.15rem;
  color: var(--ink-luminous);
  margin: var(--space-4) 0 var(--space-2);
}
.page__faq-block + .page__faq-block {
  margin-top: var(--space-5);
  padding-top: var(--space-4);
  border-top: 1px solid var(--line-faint);
}
.page__faq-block dt:first-child { margin-top: 0; }
.page__faq dd {
  margin: 0 0 var(--space-2);
  color: var(--ink-soft);
  max-width: 62ch;
  line-height: 1.55;
}
.page__faq dd:last-child {
  margin-bottom: 0;
}
.page__placeholder {
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  letter-spacing: 0.06em;
  color: rgba(180, 192, 210, 0.88);
  font-style: italic;
}
.page--archive .archive__inner {
  max-width: none;
}
.page--archive .archive__head {
  grid-template-columns: 1fr;
  align-items: start;
}
.gap-page__sequence {
  display: grid;
  gap: clamp(0.75rem, 2vh, 1.25rem);
  margin: var(--space-4) 0 var(--space-5);
}
.gap-page__sequence .gap__line {
  font-size: clamp(1.5rem, 4vw, 2.5rem);
}
.record__title a {
  color: inherit;
  border: none;
}
.record__title a:hover {
  color: var(--ember-soft);
}
@media (max-width: 900px) {
  .page { padding-top: clamp(4.5rem, 10vh, 5.5rem); }
}
.page__pullquote {
  font-family: var(--font-display);
  font-size: clamp(1.15rem, 1.8vw, 1.35rem);
  line-height: 1.45;
  letter-spacing: -0.006em;
  color: #F2E8DC;
  max-width: 44ch;
  margin: var(--space-4) 0;
  padding-left: var(--space-3);
  border-left: 2px solid rgba(var(--ember-rgb), 0.45);
}
.page__tagline {
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.95);
  margin: var(--space-3) 0 0;
  line-height: 1.7;
}
.page__cards {
  display: grid;
  gap: var(--space-4);
  margin: var(--space-4) 0 var(--space-5);
}
.page__card {
  margin: 0;
  height: 100%;
}
.page__card h2 {
  font-size: 1.15rem;
  margin: 0 0 var(--space-2);
  color: var(--ink-luminous);
}
.page__card p {
  margin: 0 0 0.65em;
  max-width: none;
}
.page__card p:last-child {
  margin-bottom: 0;
}
.page__card-email {
  font-family: var(--font-mono);
  font-size: 0.875rem;
  letter-spacing: 0.04em;
}
@media (min-width: 900px) {
  .page__cards { grid-template-columns: repeat(3, 1fr); }
}
@media (min-width: 700px) and (max-width: 899px) {
  .page__cards { grid-template-columns: repeat(2, 1fr); }
  .page__card:last-child { grid-column: 1 / -1; }
}
@media (max-width: 699px) {
  .page__cards { grid-template-columns: 1fr; }
}
.skip-link {
  position: absolute;
  left: -9999px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
  z-index: 1000;
  padding: 0.55rem 1rem;
  background: var(--bg-base);
  color: var(--ink-luminous);
  border: 1px solid var(--line-soft);
  font-family: var(--font-mono);
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none;
}
.skip-link:focus {
  left: 1rem;
  top: 1rem;
  width: auto;
  height: auto;
  overflow: visible;
}
.page--methodology .page__section h2 {
  font-size: clamp(1.25rem, 1.8vw, 1.5rem);
}
.page--methodology .page__plate p {
  max-width: none;
}

/* === how-it-works process page === */

.page--how-it-works .hiw-masthead {
  margin-bottom: var(--space-6);
  padding-bottom: var(--space-5);
  border-bottom: 1px solid var(--line-soft);
  box-shadow: inset 0 -1px 0 rgba(var(--ember-rgb), 0.12);
}
.page--how-it-works .hiw-masthead .section-label {
  margin-bottom: var(--space-3);
  color: rgba(180, 192, 210, 0.95);
}
.page--how-it-works .hiw-masthead .section-label--named::before {
  color: rgba(var(--ember-rgb), 0.6);
}
.page--how-it-works .hiw-masthead h1 {
  margin-bottom: var(--space-3);
}
.page--how-it-works .hiw-intro--tight {
  margin-top: calc(-1 * var(--space-3));
  margin-bottom: 0;
}

/* Process container */
.page--how-it-works .hiw-process {
  margin: 0 0 var(--space-6);
  border: 1px solid var(--line-soft);
  border-left: 3px solid rgba(var(--ember-rgb), 0.45);
  background: rgba(var(--bg-surface-rgb), 0.28);
}

/* Step record rows */
.page--how-it-works .hiw-step {
  display: grid;
  grid-template-columns: 4.25rem 1fr;
  gap: var(--space-3);
  align-items: start;
  padding: var(--space-4) var(--space-4) var(--space-4) var(--space-3);
  border-bottom: 1px solid var(--line-soft);
  background: rgba(var(--bg-elevated-rgb), 0.14);
}
.page--how-it-works .hiw-step:last-child {
  border-bottom: none;
}
.page--how-it-works .hiw-step:nth-child(even) {
  background: rgba(var(--bg-surface-rgb), 0.22);
}

/* Number cell — attached to step, never floating */
.page--how-it-works .hiw-step__num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  min-width: 3rem;
  height: 3rem;
  margin: 0;
  font-family: var(--font-mono);
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  color: var(--ember-soft);
  line-height: 1;
  border: 1px solid rgba(var(--ember-rgb), 0.5);
  background: rgba(var(--bg-base-rgb), 0.95);
  flex-shrink: 0;
}

/* Step body — grouped with number */
.page--how-it-works .hiw-step__body {
  min-width: 0;
  padding: 0.15rem 0 0;
  border-left: 1px solid rgba(var(--ember-rgb), 0.2);
  padding-left: var(--space-4);
}
.page--how-it-works .hiw-step__body h2 {
  font-family: var(--font-display);
  font-size: 1.0625rem;
  font-weight: 450;
  letter-spacing: -0.008em;
  color: var(--ink-luminous);
  margin: 0 0 var(--space-2);
  padding: 0;
  border: none;
  line-height: 1.3;
}
.page--how-it-works .hiw-step__body p {
  margin: 0 0 0.85em;
  max-width: 56ch;
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.62;
  color: var(--ink-soft);
}
.page--how-it-works .hiw-step__body p:last-child {
  margin-bottom: 0;
}

/* Rubric table instrument */
.page--how-it-works .hiw-rubric {
  margin: var(--space-3) 0 var(--space-2);
  border: 1px solid var(--line-soft);
  border-top: 1px solid rgba(var(--ember-rgb), 0.28);
  background: rgba(var(--bg-base-rgb), 0.55);
  overflow: hidden;
}
.page--how-it-works .hiw-rubric__label {
  padding: 0.7rem var(--space-3);
  border-bottom: 1px solid var(--line-soft);
  font-family: var(--font-mono);
  font-size: 0.68rem;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(var(--ember-rgb), 0.82);
  background: rgba(var(--bg-surface-rgb), 0.35);
}
.page--how-it-works .hiw-rubric__row {
  display: grid;
  grid-template-columns: 3.25rem 1fr;
  gap: var(--space-3);
  padding: 0.85rem var(--space-3);
  border-bottom: 1px solid var(--line-faint);
  align-items: start;
}
.page--how-it-works .hiw-rubric__row:last-child {
  border-bottom: none;
}
.page--how-it-works .hiw-rubric__row:nth-child(even) {
  background: rgba(var(--bg-elevated-rgb), 0.12);
}
.page--how-it-works .hiw-rubric__score {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  min-width: 2.25rem;
  height: 2.25rem;
  font-family: var(--font-mono);
  font-size: 1.1rem;
  font-weight: 500;
  color: var(--ember-soft);
  line-height: 1;
  border: 1px solid rgba(var(--ember-rgb), 0.45);
  background: rgba(var(--ember-rgb), 0.08);
}
.page--how-it-works .hiw-rubric__text {
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.58;
  color: var(--ink-soft);
  padding-top: 0.25rem;
}

/* Closing block */
.page--how-it-works .hiw-closing {
  margin-bottom: var(--space-5);
  padding: var(--space-4);
  border: 1px solid var(--line-soft);
  border-left: 3px solid rgba(var(--ember-rgb), 0.45);
  background: rgba(var(--bg-elevated-rgb), 0.18);
}
.page--how-it-works .hiw-closing h2 {
  font-family: var(--font-display);
  font-size: 1.125rem;
  font-weight: 450;
  letter-spacing: -0.008em;
  color: var(--ink-luminous);
  margin: 0 0 var(--space-3);
  padding-bottom: 0.55rem;
  border-bottom: 1px solid var(--line-faint);
}
.page--how-it-works .hiw-closing p {
  margin: 0 0 0.85em;
  max-width: 58ch;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--ink-soft);
}
.page--how-it-works .hiw-closing p:last-child {
  margin-bottom: 0;
}

/* CTA row */
.page--how-it-works .hiw-cta {
  margin-top: var(--space-5);
  padding-top: var(--space-4);
  border-top: 1px solid var(--line-soft);
}
.page--how-it-works .hiw-cta a .arrow {
  color: var(--ember-soft);
  transition: transform 0.3s ease, color 0.25s ease;
}
.page--how-it-works .hiw-cta a:hover .arrow {
  transform: translateX(4px);
  color: var(--ember-bright);
}

@media (max-width: 699px) {
  .page--how-it-works .hiw-masthead {
    margin-bottom: var(--space-5);
    padding-bottom: var(--space-4);
  }
  .page--how-it-works .hiw-step {
    grid-template-columns: 3.25rem 1fr;
    gap: var(--space-2);
    padding: var(--space-3);
  }
  .page--how-it-works .hiw-step__num {
    width: 2.75rem;
    min-width: 2.75rem;
    height: 2.75rem;
    font-size: 0.7rem;
  }
  .page--how-it-works .hiw-step__body {
    padding-left: var(--space-3);
  }
  .page--how-it-works .hiw-step__body h2 {
    font-size: 1rem;
    overflow-wrap: break-word;
  }
  .page--how-it-works .hiw-step__body p {
    max-width: none;
  }
  .page--how-it-works .hiw-rubric__row {
    grid-template-columns: 2.75rem 1fr;
    gap: var(--space-2);
    padding: 0.75rem var(--space-2);
  }
  .page--how-it-works .hiw-rubric__score {
    width: 2rem;
    min-width: 2rem;
    height: 2rem;
    font-size: 1rem;
  }
  .page--how-it-works .hiw-rubric__text {
    font-size: 0.875rem;
  }
  .page--how-it-works .hiw-closing {
    padding: var(--space-3);
  }
  .page--how-it-works .hiw-closing h2 {
    font-size: 1.0625rem;
    overflow-wrap: break-word;
  }
}

/* === faq doctrine page === */

.page--faq {
  --faq-type-title: clamp(2.25rem, 3.8vw, 3rem);
  --faq-type-question: clamp(1.15rem, 1.6vw, 1.3rem);
  --faq-type-answer: 1rem;
}

.page--faq .faq-masthead {
  margin-bottom: var(--space-6);
  padding-bottom: var(--space-6);
  border-bottom: 1px solid rgba(var(--ember-rgb), 0.34);
  box-shadow: inset 0 -2px 0 rgba(var(--ember-rgb), 0.16);
}
.page--faq .faq-masthead .section-label {
  margin-bottom: var(--space-3);
  color: rgba(180, 192, 210, 0.98);
}
.page--faq .faq-masthead .section-label--named::before {
  color: rgba(var(--ember-rgb), 0.78);
}
.page--faq .faq-masthead h1 {
  margin-bottom: 0;
  font-size: var(--faq-type-title);
  color: var(--ink-luminous);
}

/* Grouped ledger sections */
.page--faq .faq-group {
  margin-bottom: var(--space-5);
  border: none;
  background: transparent;
}
.page--faq .faq-group + .faq-group {
  margin-top: var(--space-6);
  padding-top: var(--space-5);
  border-top: 1px solid rgba(var(--ember-rgb), 0.28);
  box-shadow: inset 0 1px 0 rgba(var(--ember-rgb), 0.1);
}
.page--faq .faq-group:last-of-type {
  margin-bottom: var(--space-6);
}
.page--faq .faq-list {
  margin: 0;
  padding: 0;
}

/* Q&A entries — readable rhythm */
.page--faq .faq-entry {
  margin: 0;
  padding: 1.15rem var(--space-2) 1.2rem;
  border: none;
  border-bottom: 1px solid var(--line-soft);
  background: transparent;
}
.page--faq .faq-entry:nth-child(even) {
  background: rgba(var(--bg-surface-rgb), 0.1);
}
.page--faq .faq-entry:first-child {
  padding-top: 0.85rem;
}
.page--faq .faq-entry:last-child {
  border-bottom: none;
  padding-bottom: 0.5rem;
}
.page--faq .faq-entry dt {
  margin: 0 0 0.75rem;
  padding: 0;
  border: none;
  background: transparent;
  font-family: var(--font-display);
  font-size: var(--faq-type-question);
  font-weight: 500;
  letter-spacing: -0.012em;
  line-height: 1.3;
  color: var(--ink-luminous);
  max-width: 52ch;
}
.page--faq .faq-entry dt::before {
  content: "//";
  margin-right: 0.5rem;
  font-family: var(--font-mono);
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--ember-soft);
}
.page--faq .faq-entry dd {
  margin: 0;
  padding: 0.15rem 0 0.15rem 1.1rem;
  border: none;
  border-left: 2px solid rgba(var(--ember-rgb), 0.36);
  font-family: var(--font-body);
  font-size: var(--faq-type-answer);
  line-height: 1.6;
  color: var(--ink-soft);
  max-width: 58ch;
}

/* CTA row */
.page--faq .faq-cta {
  margin-top: var(--space-5);
  padding-top: var(--space-4);
  border-top: 1px solid var(--line-soft);
}
.page--faq .faq-cta a .arrow {
  color: var(--ember-soft);
  transition: transform 0.3s ease, color 0.25s ease;
}
.page--faq .faq-cta a:hover .arrow {
  transform: translateX(4px);
  color: var(--ember-bright);
}

@media (max-width: 699px) {
  .page--faq {
    --faq-type-title: 2rem;
    --faq-type-question: 1.1rem;
    --faq-type-answer: 0.9375rem;
  }
  .page--faq .faq-masthead {
    margin-bottom: var(--space-5);
    padding-bottom: var(--space-5);
  }
  .page--faq .faq-group + .faq-group {
    margin-top: var(--space-5);
    padding-top: var(--space-4);
  }
  .page--faq .faq-entry {
    padding: 1rem var(--space-1) 1.05rem;
  }
  .page--faq .faq-entry dt {
    margin-bottom: 0.65rem;
    max-width: none;
    overflow-wrap: break-word;
  }
  .page--faq .faq-entry dt::before {
    font-size: 0.625rem;
  }
  .page--faq .faq-entry dd {
    padding-left: 0.9rem;
    max-width: none;
  }
}

/* === case 005 record page === */

.page--case-005 .case-masthead {
  margin-bottom: var(--space-5);
  padding-bottom: var(--space-4);
  border-bottom: 1px solid var(--line-soft);
  box-shadow: inset 0 -1px 0 rgba(var(--ember-rgb), 0.12);
}
.page--case-005 .case-masthead .section-label {
  margin-bottom: var(--space-3);
  color: rgba(180, 192, 210, 0.95);
}
.page--case-005 .case-masthead .section-label--named::before {
  color: rgba(var(--ember-rgb), 0.6);
}
.page--case-005 .case-masthead h1 {
  margin: 0 0 var(--space-4);
}

/* Metadata record strip */
.page--case-005 .case-meta {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-2) var(--space-3);
  margin: 0;
  padding: var(--space-3) 0 0;
  border-top: 1px solid var(--line-faint);
}
.page--case-005 .case-meta__item {
  margin: 0;
  min-width: 0;
}
.page--case-005 .case-meta__item dt {
  margin: 0 0 0.35rem;
  font-family: var(--font-mono);
  font-size: 0.62rem;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(var(--ember-rgb), 0.72);
}
.page--case-005 .case-meta__item dd {
  margin: 0;
  font-family: var(--font-mono);
  font-size: 0.78rem;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.4;
  color: rgba(212, 207, 194, 0.94);
  overflow-wrap: break-word;
}
.page--case-005 .case-meta__item:nth-child(3) dd {
  color: var(--ember-soft);
  font-weight: 500;
}

/* Shared record sections */
.page--case-005 .case-record {
  margin-bottom: var(--space-5);
  padding-top: var(--space-4);
  border-top: 1px solid var(--line-faint);
}
.page--case-005 .case-summary {
  padding-top: 0;
  border-top: none;
}
.page--case-005 .case-record__label {
  margin: 0 0 var(--space-3);
  padding: 0;
  border: none;
  font-family: var(--font-mono);
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.17em;
  text-transform: uppercase;
  color: rgba(var(--ember-rgb), 0.78);
  line-height: 1.3;
}
.page--case-005 .case-record__body {
  margin: 0;
  padding: var(--space-3) var(--space-3) var(--space-3) var(--space-4);
  border: 1px solid var(--line-faint);
  border-left: 2px solid rgba(var(--ember-rgb), 0.28);
  background: rgba(var(--bg-surface-rgb), 0.18);
}
.page--case-005 .case-record__body p {
  margin: 0 0 0.85em;
  max-width: 62ch;
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.62;
  color: var(--ink-soft);
}
.page--case-005 .case-record__body p:last-child {
  margin-bottom: 0;
}

/* Prompt evidence fields */
.page--case-005 .case-evidence {
  margin-bottom: var(--space-5);
  padding-top: var(--space-4);
  border-top: 1px solid var(--line-faint);
}
.page--case-005 .case-prompt-field {
  margin: 0 0 var(--space-4);
}
.page--case-005 .case-prompt-field:last-child {
  margin-bottom: 0;
}
.page--case-005 .case-prompt-field__label {
  margin: 0 0 var(--space-2);
  padding: 0;
  border: none;
  font-family: var(--font-mono);
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.17em;
  text-transform: uppercase;
  color: rgba(var(--ember-rgb), 0.78);
  line-height: 1.3;
}
.page--case-005 .case-prompt-field__text {
  margin: 0 0 var(--space-2);
  padding: var(--space-3) var(--space-3);
  border: 1px solid var(--line-soft);
  background: rgba(var(--bg-base-rgb), 0.45);
}
.page--case-005 .case-prompt-field__text p {
  margin: 0;
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.58;
  color: var(--ink-primary);
  max-width: none;
}
.page--case-005 .case-prompt-field__pending {
  margin: 0;
  padding: 0.65rem var(--space-3);
  border: 1px dashed rgba(var(--ember-rgb), 0.22);
  background: rgba(var(--bg-base-rgb), 0.25);
  font-family: var(--font-mono);
  font-size: 0.72rem;
  font-weight: 400;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.72);
  font-style: normal;
}

/* Finding record */
.page--case-005 .case-finding .case-record__body {
  border-left-color: rgba(var(--ember-rgb), 0.22);
}

/* Score measurement field */
.page--case-005 .case-score__field {
  margin: 0 0 var(--space-3);
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--line-soft);
  border-top: 1px solid rgba(var(--ember-rgb), 0.32);
  background: rgba(var(--bg-base-rgb), 0.5);
}
.page--case-005 .case-score__label {
  display: block;
  margin-bottom: 0.5rem;
  font-family: var(--font-mono);
  font-size: 0.62rem;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(var(--ember-rgb), 0.72);
}
.page--case-005 .case-score__value {
  margin: 0 0 0.4rem;
  font-family: var(--font-mono);
  font-size: 1.35rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.2;
  color: var(--ember-soft);
}
.page--case-005 .case-score__value strong {
  font-weight: 500;
  color: var(--ember-bright);
}
.page--case-005 .case-score__note {
  margin: 0;
  font-family: var(--font-body);
  font-size: 0.875rem;
  line-height: 1.55;
  color: rgba(212, 207, 194, 0.92);
  max-width: 56ch;
}

/* Methodology note */
.page--case-005 .case-methodology {
  margin-bottom: var(--space-4);
}
.page--case-005 .case-methodology .case-record__body {
  padding: var(--space-2) var(--space-3) var(--space-2) var(--space-3);
  border: 1px solid var(--line-faint);
  border-left: 1px solid rgba(var(--ember-rgb), 0.18);
  background: rgba(var(--bg-surface-rgb), 0.1);
}
.page--case-005 .case-methodology .case-record__body p {
  font-size: 0.875rem;
  line-height: 1.58;
  color: rgba(180, 192, 210, 0.9);
}

/* CTA row */
.page--case-005 .case-cta {
  margin-top: var(--space-5);
  padding-top: var(--space-4);
  border-top: 1px solid var(--line-soft);
}
.page--case-005 .case-cta a .arrow {
  color: var(--ember-soft);
  transition: transform 0.3s ease, color 0.25s ease;
}
.page--case-005 .case-cta a:hover .arrow {
  transform: translateX(4px);
  color: var(--ember-bright);
}

@media (max-width: 699px) {
  .page--case-005 .case-masthead {
    margin-bottom: var(--space-4);
    padding-bottom: var(--space-3);
  }
  .page--case-005 .case-masthead h1 {
    margin-bottom: var(--space-3);
  }
  .page--case-005 .case-meta {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-2);
    padding-top: var(--space-2);
  }
  .page--case-005 .case-record__body {
    padding: var(--space-2) var(--space-2) var(--space-2) var(--space-3);
  }
  .page--case-005 .case-record__body p {
    font-size: 0.9rem;
    max-width: none;
  }
  .page--case-005 .case-prompt-field__text {
    padding: var(--space-2);
  }
  .page--case-005 .case-prompt-field__text p {
    font-size: 0.9rem;
    overflow-wrap: break-word;
  }
  .page--case-005 .case-score__field {
    padding: var(--space-2) var(--space-3);
  }
  .page--case-005 .case-score__value {
    font-size: 1.2rem;
  }
}

/* === methodology protocol page === */

.page--methodology {
  --meth-prose-width: 42rem;
}
.page--methodology .meth-masthead {
  margin-bottom: var(--space-5);
  padding-bottom: var(--space-4);
  border-bottom: 1px solid var(--line-soft);
  box-shadow: inset 0 -1px 0 rgba(var(--ember-rgb), 0.12);
}
.page--methodology .meth-masthead .section-label {
  margin-bottom: var(--space-3);
  color: rgba(180, 192, 210, 0.95);
}
.page--methodology .meth-masthead .section-label--named::before {
  color: rgba(var(--ember-rgb), 0.6);
}
.page--methodology .meth-masthead h1 {
  margin-bottom: var(--space-3);
}
.page--methodology .meth-masthead .page__intro {
  margin: 0 0 var(--space-2);
  max-width: 62ch;
  line-height: 1.55;
}
.page--methodology .meth-masthead .page__intro:last-of-type {
  margin-bottom: 0;
}
.page--methodology .meth-intro--tight {
  margin-top: 0;
  margin-bottom: var(--space-2);
}

/* Section blocks */
.page--methodology .meth-section {
  margin-bottom: var(--space-5);
  padding-top: var(--space-4);
  border-top: 1px solid var(--line-faint);
}
.page--methodology .meth-observability {
  padding-top: 0;
  border-top: none;
}
.page--methodology .meth-section__title {
  margin: 0 0 var(--space-3);
  padding: 0;
  border: none;
  font-family: var(--font-display);
  font-size: clamp(1.2rem, 1.8vw, 1.45rem);
  font-weight: 450;
  letter-spacing: -0.01em;
  line-height: 1.3;
  color: var(--ink-luminous);
}
.page--methodology .meth-section > p,
.page--methodology .meth-section__body p {
  margin: 0 0 0.85em;
  max-width: 62ch;
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.62;
  color: var(--ink-soft);
}
.page--methodology .meth-section > p:last-child,
.page--methodology .meth-section__body p:last-child {
  margin-bottom: 0;
}
.page--methodology .meth-section__body {
  margin-top: var(--space-3);
}

/* Protocol checklist */
.page--methodology .meth-protocol-list {
  margin: var(--space-2) 0 var(--space-3);
  padding: var(--space-2) var(--space-3) var(--space-2) var(--space-3);
  max-width: var(--meth-prose-width);
  list-style: none;
  border: 1px solid var(--line-faint);
  border-left: 2px solid rgba(var(--ember-rgb), 0.28);
  background: rgba(var(--bg-surface-rgb), 0.12);
}
.page--methodology .meth-protocol-list li {
  position: relative;
  margin: 0;
  padding: 0.45rem 0 0.45rem 1.1rem;
  border-bottom: 1px solid var(--line-faint);
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.55;
  color: var(--ink-primary);
  max-width: 58ch;
}
.page--methodology .meth-protocol-list li:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.page--methodology .meth-protocol-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.85rem;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: rgba(var(--ember-rgb), 0.55);
}
.page--methodology .meth-protocol-list--compact {
  margin-top: var(--space-3);
  margin-bottom: var(--space-3);
  padding: var(--space-2) var(--space-3) var(--space-2) var(--space-3);
}
.page--methodology .meth-controls .meth-doctrine-plate {
  margin-bottom: var(--space-4);
}
.page--methodology .meth-controls > p {
  margin-top: var(--space-3);
}
.page--methodology .meth-protocol-list--compact li {
  font-family: var(--font-mono);
  font-size: 0.8rem;
  letter-spacing: 0.02em;
  color: rgba(212, 207, 194, 0.94);
  max-width: none;
}

/* Doctrine plates */
.page--methodology .meth-doctrine-plate {
  margin: 0;
  padding: var(--space-2) var(--space-3) var(--space-2) var(--space-3);
  max-width: var(--meth-prose-width);
  border: 1px solid var(--line-faint);
  border-left: 2px solid rgba(var(--ember-rgb), 0.28);
  background: rgba(var(--bg-surface-rgb), 0.1);
}
.page--methodology .meth-doctrine-plate p {
  margin: 0 0 0.85em;
  max-width: 62ch;
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.62;
  color: var(--ink-soft);
}
.page--methodology .meth-doctrine-plate p:last-child {
  margin-bottom: 0;
}
.page--methodology .meth-doctrine-plate--compact {
  padding: var(--space-2) var(--space-3) var(--space-2) var(--space-3);
}

/* 0–3 scoring instrument */
.page--methodology .meth-rubric-instrument {
  margin: 0 0 var(--space-2);
  max-width: var(--meth-prose-width);
  border: 1px solid var(--line-soft);
  border-top: 1px solid rgba(var(--ember-rgb), 0.28);
  background: rgba(var(--bg-base-rgb), 0.38);
  overflow: hidden;
}
.page--methodology .meth-rubric-instrument__label {
  display: block;
  padding: 0.7rem var(--space-3);
  border-bottom: 1px solid var(--line-soft);
  font-family: var(--font-mono);
  font-size: 0.68rem;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(var(--ember-rgb), 0.82);
  background: rgba(var(--bg-surface-rgb), 0.35);
}
.page--methodology .meth-rubric-instrument__row {
  display: grid;
  grid-template-columns: 3rem 1fr;
  gap: var(--space-2);
  padding: 0.7rem var(--space-3);
  border-bottom: 1px solid var(--line-faint);
  align-items: start;
}
.page--methodology .meth-rubric-instrument__row:last-child {
  border-bottom: none;
}
.page--methodology .meth-rubric-instrument__row:nth-child(even) {
  background: rgba(var(--bg-elevated-rgb), 0.1);
}
.page--methodology .meth-rubric-instrument__score {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  min-width: 2.25rem;
  height: 2.25rem;
  font-family: var(--font-mono);
  font-size: 1.1rem;
  font-weight: 500;
  color: var(--ember-soft);
  line-height: 1;
  border: 1px solid rgba(var(--ember-rgb), 0.45);
  background: rgba(var(--ember-rgb), 0.08);
}
.page--methodology .meth-rubric-instrument__desc {
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.58;
  color: var(--ink-soft);
  padding-top: 0.25rem;
}

/* Signal pattern ledger rows */
.page--methodology .meth-signal-grid {
  display: flex;
  flex-direction: column;
  gap: 0;
  max-width: var(--meth-prose-width);
  border: none;
  border-left: 2px solid rgba(var(--ember-rgb), 0.2);
  background: transparent;
}
.page--methodology .meth-signal {
  margin: 0;
  padding: var(--space-2) var(--space-3) var(--space-2) var(--space-3);
  border-bottom: 1px solid var(--line-faint);
}
.page--methodology .meth-signal:last-child {
  border-bottom: none;
}
.page--methodology .meth-signal__label {
  margin: 0 0 0.4rem;
  padding: 0;
  border: none;
  font-family: var(--font-mono);
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(var(--ember-rgb), 0.78);
  line-height: 1.3;
}
.page--methodology .meth-signal p {
  margin: 0;
  max-width: 58ch;
  font-family: var(--font-body);
  font-size: 0.9rem;
  line-height: 1.58;
  color: var(--ink-soft);
}

/* Capture protocol checklist */
.page--methodology .meth-capture-checklist {
  margin: var(--space-2) 0 var(--space-3);
  padding: 0;
  max-width: var(--meth-prose-width);
  list-style: none;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  border: 1px solid var(--line-soft);
  background: rgba(var(--bg-base-rgb), 0.28);
  overflow: hidden;
}
.page--methodology .meth-capture-checklist li {
  margin: 0;
  padding: 0.65rem var(--space-2);
  border-right: 1px solid var(--line-faint);
  border-bottom: 1px solid var(--line-faint);
  font-family: var(--font-mono);
  font-size: 0.72rem;
  font-weight: 400;
  letter-spacing: 0.06em;
  text-transform: lowercase;
  color: rgba(212, 207, 194, 0.92);
  line-height: 1.4;
}
.page--methodology .meth-capture-checklist li::before {
  content: "// ";
  color: rgba(var(--ember-rgb), 0.38);
}
.page--methodology .meth-capture-checklist li:nth-child(3n) {
  border-right: none;
}
.page--methodology .meth-capture-checklist li:nth-last-child(-n+3) {
  border-bottom: none;
}

/* Cross-tier stat note */
.page--methodology .meth-stat-note {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  margin: var(--space-3) 0;
  padding: 0;
  max-width: 28rem;
  border: 1px solid var(--line-faint);
  background: rgba(var(--bg-base-rgb), 0.25);
}
.page--methodology .meth-stat-note__item {
  margin: 0;
  padding: var(--space-2) var(--space-3);
  border-right: 1px solid var(--line-faint);
}
.page--methodology .meth-stat-note__item:last-child {
  border-right: none;
}
.page--methodology .meth-stat-note__item dt {
  margin: 0 0 0.3rem;
  font-family: var(--font-mono);
  font-size: 0.62rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(var(--ember-rgb), 0.68);
}
.page--methodology .meth-stat-note__item dd {
  margin: 0;
  font-family: var(--font-mono);
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: var(--ember-soft);
  line-height: 1.2;
}

/* v1 dataset scan strip */
.page--methodology .meth-dataset-strip {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0;
  margin: 0 0 var(--space-3);
  padding: 0;
  max-width: var(--meth-prose-width);
  border: 1px solid var(--line-soft);
  border-top: 1px solid rgba(var(--ember-rgb), 0.22);
  background: rgba(var(--bg-base-rgb), 0.28);
}
.page--methodology .meth-dataset-strip__item {
  margin: 0;
  padding: var(--space-2) var(--space-2);
  border-right: 1px solid var(--line-faint);
  min-width: 0;
}
.page--methodology .meth-dataset-strip__item:last-child {
  border-right: none;
}
.page--methodology .meth-dataset-strip__item dt {
  margin: 0 0 0.3rem;
  font-family: var(--font-mono);
  font-size: 0.58rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(var(--ember-rgb), 0.65);
  line-height: 1.3;
}
.page--methodology .meth-dataset-strip__item dd {
  margin: 0;
  font-family: var(--font-mono);
  font-size: 0.88rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: var(--ember-soft);
  line-height: 1.25;
  overflow-wrap: break-word;
}

/* Known limitations plate */
.page--methodology .meth-limitations-plate {
  margin: var(--space-2) 0 var(--space-3);
  max-width: var(--meth-prose-width);
  border: 1px solid var(--line-faint);
  border-left: 2px solid rgba(var(--ember-rgb), 0.22);
  background: rgba(var(--bg-surface-rgb), 0.08);
}
.page--methodology .meth-limitation {
  margin: 0;
  padding: var(--space-2) var(--space-3) var(--space-2) var(--space-3);
  border-bottom: 1px solid var(--line-faint);
}
.page--methodology .meth-limitation:last-child {
  border-bottom: none;
}
.page--methodology .meth-limitation__label {
  margin: 0 0 0.35rem;
  padding: 0;
  border: none;
  font-family: var(--font-mono);
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(var(--ember-rgb), 0.75);
  line-height: 1.3;
}
.page--methodology .meth-limitation p {
  margin: 0;
  max-width: 62ch;
  font-family: var(--font-body);
  font-size: 0.9rem;
  line-height: 1.58;
  color: var(--ink-soft);
}

/* Landscape category grid */
.page--methodology .meth-landscape-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  margin: var(--space-3) 0;
  max-width: var(--meth-prose-width);
  border: none;
  border-left: 2px solid rgba(var(--ember-rgb), 0.18);
  background: transparent;
}
.page--methodology .meth-landscape-item {
  margin: 0;
  padding: var(--space-2) var(--space-3) var(--space-2) var(--space-3);
  border-bottom: 1px solid var(--line-faint);
}
.page--methodology .meth-landscape-item:last-child {
  border-bottom: none;
}
.page--methodology .meth-landscape-item__label {
  margin: 0 0 0.35rem;
  padding: 0;
  border: none;
  font-family: var(--font-mono);
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(var(--ember-rgb), 0.76);
  line-height: 1.3;
}
.page--methodology .meth-landscape-item p {
  margin: 0;
  max-width: 62ch;
  font-family: var(--font-body);
  font-size: 0.9rem;
  line-height: 1.58;
  color: var(--ink-soft);
}

/* CTA row */
.page--methodology .meth-cta {
  margin-top: var(--space-5);
  padding-top: var(--space-4);
  border-top: 1px solid var(--line-soft);
}
.page--methodology .meth-cta a .arrow {
  color: var(--ember-soft);
  transition: transform 0.3s ease, color 0.25s ease;
}
.page--methodology .meth-cta a:hover .arrow {
  transform: translateX(4px);
  color: var(--ember-bright);
}

@media (max-width: 699px) {
  .page--methodology {
    --meth-prose-width: 100%;
  }
  .page--methodology .meth-masthead {
    margin-bottom: var(--space-4);
    padding-bottom: var(--space-3);
  }
  .page--methodology .meth-masthead .page__intro {
    max-width: none;
  }
  .page--methodology .meth-stat-note {
    max-width: 100%;
  }
  .page--methodology .meth-section {
    margin-bottom: var(--space-4);
    padding-top: var(--space-3);
  }
  .page--methodology .meth-section__title {
    font-size: 1.15rem;
  }
  .page--methodology .meth-section > p,
  .page--methodology .meth-section__body p,
  .page--methodology .meth-doctrine-plate p {
    font-size: 0.9rem;
    max-width: none;
  }
  .page--methodology .meth-protocol-list {
    padding: var(--space-2) var(--space-2) var(--space-2) var(--space-3);
  }
  .page--methodology .meth-protocol-list li {
    max-width: none;
    overflow-wrap: break-word;
  }
  .page--methodology .meth-rubric-instrument__row {
    grid-template-columns: 2.75rem 1fr;
    gap: var(--space-2);
    padding: 0.75rem var(--space-2);
  }
  .page--methodology .meth-rubric-instrument__score {
    width: 2rem;
    min-width: 2rem;
    height: 2rem;
    font-size: 1rem;
  }
  .page--methodology .meth-rubric-instrument__desc {
    font-size: 0.875rem;
  }
  .page--methodology .meth-capture-checklist {
    grid-template-columns: 1fr 1fr;
  }
  .page--methodology .meth-capture-checklist li:nth-child(3n) {
    border-right: 1px solid var(--line-faint);
  }
  .page--methodology .meth-capture-checklist li:nth-child(2n) {
    border-right: none;
  }
  .page--methodology .meth-capture-checklist li:nth-last-child(-n+3) {
    border-bottom: 1px solid var(--line-faint);
  }
  .page--methodology .meth-capture-checklist li:nth-last-child(-n+2) {
    border-bottom: none;
  }
  .page--methodology .meth-capture-checklist li:nth-last-child(1):nth-child(odd) {
    border-bottom: none;
    grid-column: 1 / -1;
    border-right: none;
  }
  .page--methodology .meth-stat-note {
    grid-template-columns: 1fr;
  }
  .page--methodology .meth-stat-note__item {
    border-right: none;
    border-bottom: 1px solid var(--line-faint);
  }
  .page--methodology .meth-stat-note__item:last-child {
    border-bottom: none;
  }
  .page--methodology .meth-dataset-strip {
    grid-template-columns: repeat(2, 1fr);
  }
  .page--methodology .meth-dataset-strip__item {
    border-bottom: 1px solid var(--line-faint);
  }
  .page--methodology .meth-dataset-strip__item:nth-child(2n) {
    border-right: none;
  }
  .page--methodology .meth-dataset-strip__item:nth-last-child(1) {
    border-bottom: none;
    grid-column: 1 / -1;
    border-right: none;
  }
  .page--methodology .meth-limitation p,
  .page--methodology .meth-signal p,
  .page--methodology .meth-landscape-item p {
    max-width: none;
  }
}

/* === institutions workpaper page === */

.page--institutions {
  --inst-prose-width: 42rem;
}
.page--institutions ul,
.page--institutions ol {
  list-style: none;
  padding-left: 0;
}
.page--institutions li::marker {
  content: "";
}

/* Masthead — hero block */
.page--institutions .inst-masthead {
  margin-bottom: var(--space-6);
  padding-bottom: var(--space-6);
  border-bottom: 1px solid rgba(var(--ember-rgb), 0.22);
  box-shadow: inset 0 -2px 0 rgba(var(--ember-rgb), 0.1);
}
.page--institutions .inst-masthead .section-label {
  margin-bottom: var(--space-3);
  color: rgba(180, 192, 210, 0.95);
}
.page--institutions .inst-masthead .section-label--named::before {
  color: rgba(var(--ember-rgb), 0.62);
}
.page--institutions .inst-masthead h1 {
  margin-bottom: var(--space-4);
  color: rgba(242, 232, 220, 0.98);
}
.page--institutions .inst-masthead__thesis {
  margin: 0 0 var(--space-5);
  max-width: 52ch;
  font-family: var(--font-display);
  font-size: clamp(1.4rem, 2.5vw, 1.75rem);
  line-height: 1.34;
  letter-spacing: -0.012em;
  color: rgba(242, 232, 220, 0.96);
}
.page--institutions .inst-masthead__briefing {
  max-width: var(--inst-prose-width);
  padding: var(--space-4) var(--space-3) var(--space-4) var(--space-4);
  border: 1px solid var(--line-soft);
  border-top: 1px solid rgba(var(--ember-rgb), 0.2);
  border-left: 3px solid rgba(var(--ember-rgb), 0.34);
  background: rgba(var(--bg-base-rgb), 0.32);
  box-shadow: inset 0 1px 0 rgba(var(--ember-rgb), 0.06);
}
.page--institutions .inst-masthead .page__intro {
  margin: 0 0 var(--space-2);
  max-width: 62ch;
  font-size: 0.9375rem;
  line-height: 1.62;
  color: rgba(212, 207, 194, 0.88);
}
.page--institutions .inst-masthead .page__intro:last-child {
  margin-bottom: 0;
}
.page--institutions .inst-intro--tight {
  margin-top: var(--space-3);
  padding-top: var(--space-3);
  border-top: 1px solid rgba(var(--ember-rgb), 0.14);
  color: rgba(212, 207, 194, 0.94);
}

/* Section blocks — varied rhythm */
.page--institutions .inst-section {
  margin: 0;
  padding: 0;
  border: none;
}
.page--institutions .inst-deliverables {
  margin-bottom: var(--space-5);
}
.page--institutions .inst-restraint {
  margin-top: var(--space-4);
  margin-bottom: var(--space-5);
  padding-top: var(--space-4);
  border-top: 1px solid var(--line-faint);
}
.page--institutions .inst-oversight {
  margin-top: var(--space-6);
  margin-bottom: var(--space-5);
}
.page--institutions .inst-stack {
  margin-top: var(--space-4);
  margin-bottom: var(--space-5);
  padding-top: var(--space-3);
  border-top: 1px solid var(--line-faint);
}
.page--institutions .inst-posture {
  margin-top: var(--space-7);
  margin-bottom: var(--space-5);
  padding-top: var(--space-5);
  border-top: 1px solid rgba(var(--ember-rgb), 0.2);
}
.page--institutions .inst-near-term {
  margin-top: var(--space-5);
  margin-bottom: var(--space-3);
}
.page--institutions .inst-section__title {
  margin: 0 0 var(--space-4);
  padding: 0 0 var(--space-3);
  max-width: var(--inst-prose-width);
  border: none;
  border-bottom: 1px solid var(--line-faint);
  box-shadow: 0 1px 0 rgba(var(--ember-rgb), 0.07);
  font-family: var(--font-display);
  font-size: clamp(1.35rem, 2.1vw, 1.65rem);
  font-weight: 500;
  letter-spacing: -0.015em;
  line-height: 1.28;
  color: var(--ink-luminous);
}

/* Shared ledger shell */
.page--institutions .inst-output-ledger,
.page--institutions .inst-restraint-plate {
  max-width: var(--inst-prose-width);
  border: 1px solid var(--line-soft);
  border-top: 1px solid rgba(var(--ember-rgb), 0.22);
  border-left: 2px solid rgba(var(--ember-rgb), 0.3);
  background: rgba(var(--bg-base-rgb), 0.28);
  overflow: hidden;
}

/* Output deliverables ledger */
.page--institutions .inst-deliverables .inst-output-ledger {
  border-left-width: 3px;
  border-left-color: rgba(var(--ember-rgb), 0.38);
  background: rgba(var(--bg-base-rgb), 0.34);
  box-shadow: inset 0 1px 0 rgba(var(--ember-rgb), 0.08);
}
.page--institutions .inst-output-ledger {
  margin: 0;
  padding: 0;
  counter-reset: inst-output;
}
.page--institutions .inst-output-ledger__row {
  display: grid;
  grid-template-columns: 6.75rem minmax(0, 1fr);
  gap: var(--space-3);
  align-items: start;
  margin: 0;
  counter-increment: inst-output;
  padding: 0.85rem var(--space-3);
  border-bottom: 1px solid var(--line-faint);
}
.page--institutions .inst-output-ledger__row::before {
  content: "Output " counter(inst-output, decimal-leading-zero);
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.3;
  color: rgba(var(--ember-rgb), 0.78);
}
.page--institutions .inst-output-ledger__row:nth-child(even) {
  background: rgba(var(--bg-surface-rgb), 0.12);
}
.page--institutions .inst-output-ledger__row:last-child {
  border-bottom: none;
}
.page--institutions .inst-output-ledger__text {
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.6;
  color: rgba(212, 207, 194, 0.94);
}

/* Restraint ledger */
.page--institutions .inst-restraint-list {
  margin: 0;
  padding: 0;
}
.page--institutions .inst-restraint-list__row {
  display: grid;
  grid-template-columns: 5.5rem minmax(0, 1fr);
  gap: var(--space-3);
  align-items: start;
  margin: 0;
  padding: 0.8rem var(--space-3);
  border-bottom: 1px solid var(--line-faint);
}
.page--institutions .inst-restraint-list__row::before {
  content: "Does not";
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.3;
  color: rgba(var(--ember-rgb), 0.68);
}
.page--institutions .inst-restraint-list__row:nth-child(even) {
  background: rgba(var(--bg-surface-rgb), 0.08);
}
.page--institutions .inst-restraint-list__row--records {
  margin-top: 0.15rem;
  padding: 1rem var(--space-3);
  border-top: 1px dashed rgba(var(--ember-rgb), 0.32);
  border-bottom: none;
  background: rgba(var(--ember-rgb), 0.1);
  box-shadow: inset 0 1px 0 rgba(var(--ember-rgb), 0.1);
}
.page--institutions .inst-restraint-list__row--records::before {
  content: "Records";
  font-size: 0.875rem;
  color: var(--ember-bright);
}
.page--institutions .inst-restraint-list__text {
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.58;
  color: rgba(212, 207, 194, 0.92);
}
.page--institutions .inst-restraint-list__row--records .inst-restraint-list__text {
  font-size: 1rem;
  line-height: 1.55;
  color: rgba(242, 232, 220, 0.96);
}

/* Record notes */
.page--institutions .inst-record-note {
  max-width: var(--inst-prose-width);
  padding: var(--space-3) var(--space-3) var(--space-3) var(--space-4);
  border: 1px solid var(--line-faint);
  border-left: 2px solid rgba(var(--ember-rgb), 0.26);
  background: rgba(var(--bg-surface-rgb), 0.12);
}
.page--institutions .inst-record-note p {
  margin: 0;
  max-width: 62ch;
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.65;
  color: rgba(212, 207, 194, 0.9);
}
.page--institutions .inst-briefing-note {
  padding: var(--space-4) var(--space-3) var(--space-4) var(--space-4);
  border: 1px solid var(--line-soft);
  border-left: 3px solid rgba(var(--ember-rgb), 0.42);
  background: rgba(var(--bg-surface-rgb), 0.2);
  box-shadow: inset 0 1px 0 rgba(var(--ember-rgb), 0.08);
}
.page--institutions .inst-briefing-note p {
  font-size: 1rem;
  line-height: 1.68;
  color: rgba(212, 207, 194, 0.94);
}
.page--institutions .inst-record-note__pull {
  margin-top: var(--space-4);
  padding-top: var(--space-4);
  border-top: 1px solid rgba(var(--ember-rgb), 0.18);
  max-width: 52ch;
  font-family: var(--font-display);
  font-size: clamp(1.05rem, 1.6vw, 1.15rem);
  line-height: 1.42;
  color: rgba(var(--ember-rgb), 0.92);
}

/* Stack observations */
.page--institutions .inst-observations {
  display: grid;
  gap: var(--space-3);
  counter-reset: inst-observation;
}
.page--institutions .inst-observation {
  counter-increment: inst-observation;
}
.page--institutions .inst-observation::before {
  content: "Observation " counter(inst-observation, decimal-leading-zero);
  display: block;
  margin-bottom: var(--space-2);
  font-family: var(--font-mono);
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  line-height: 1.3;
  color: rgba(var(--ember-rgb), 0.58);
}
.page--institutions .inst-observation.inst-record-note {
  padding-top: var(--space-2);
  background: rgba(var(--bg-base-rgb), 0.2);
}

/* Operating posture — doctrine object */
.page--institutions .inst-doctrine-object {
  max-width: var(--inst-prose-width);
  padding: var(--space-4) var(--space-4) var(--space-5);
  background:
    radial-gradient(ellipse 80% 60% at 12% 0%, rgba(var(--ember-rgb), 0.1), transparent 55%),
    rgba(var(--bg-base-rgb), 0.22);
  border: none;
  border-left: 3px solid rgba(var(--ember-rgb), 0.48);
  box-shadow: inset 0 -1px 0 rgba(var(--ember-rgb), 0.08);
}
.page--institutions .inst-doctrine-object__setup {
  margin: 0 0 var(--space-4);
  max-width: 58ch;
  padding-bottom: var(--space-4);
  border-bottom: 1px dashed rgba(var(--ember-rgb), 0.22);
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.65;
  color: rgba(180, 192, 210, 0.9);
}
.page--institutions .inst-posture .inst-doctrine-plate {
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
.page--institutions .inst-doctrine-plate__line {
  margin: 0;
  padding: 0;
  border: none;
  font-family: var(--font-mono);
  font-size: clamp(1rem, 1.5vw, 1.125rem);
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.45;
  text-transform: uppercase;
  color: rgba(var(--ember-rgb), 0.94);
}
.page--institutions .inst-doctrine-plate__line + .inst-doctrine-plate__line {
  margin-top: 0.65rem;
}

/* Near-term deliverables — roadmap */
.page--institutions .inst-roadmap {
  max-width: var(--inst-prose-width);
  padding: 0 0 0 var(--space-4);
  border-left: 1px solid rgba(var(--ember-rgb), 0.28);
  display: grid;
  gap: var(--space-4);
}
.page--institutions .inst-roadmap__stage {
  position: relative;
  padding-left: var(--space-2);
}
.page--institutions .inst-roadmap__stage::before {
  content: "";
  position: absolute;
  left: calc(-1 * var(--space-4) - 4px);
  top: 0.42rem;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(var(--ember-rgb), 0.72);
  box-shadow: 0 0 0 3px rgba(var(--ember-rgb), 0.12);
}
.page--institutions .inst-roadmap__stage--later::before {
  background: rgba(180, 192, 210, 0.55);
  box-shadow: 0 0 0 3px rgba(180, 192, 210, 0.1);
}
.page--institutions .inst-roadmap__label {
  display: block;
  margin-bottom: 0.45rem;
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: 1.3;
  color: rgba(var(--ember-rgb), 0.76);
}
.page--institutions .inst-roadmap__stage--later .inst-roadmap__label {
  color: rgba(180, 192, 210, 0.72);
}
.page--institutions .inst-roadmap__items {
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.3rem;
}
.page--institutions .inst-roadmap__items li {
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.5;
  color: rgba(212, 207, 194, 0.92);
}
.page--institutions .inst-roadmap__stage--later .inst-roadmap__items li {
  font-style: italic;
  color: rgba(180, 192, 210, 0.85);
}

/* CTA row */
.page--institutions .inst-cta {
  margin-top: var(--space-5);
  padding-top: var(--space-4);
  border-top: 1px solid var(--line-soft);
}
.page--institutions .inst-cta a .arrow {
  color: var(--ember-soft);
  transition: transform 0.3s ease, color 0.25s ease;
}
.page--institutions .inst-cta a:hover .arrow {
  transform: translateX(4px);
  color: var(--ember-bright);
}

@media (max-width: 699px) {
  .page--institutions {
    --inst-prose-width: 100%;
  }
  .page--institutions .inst-masthead {
    margin-bottom: var(--space-5);
    padding-bottom: var(--space-5);
  }
  .page--institutions .inst-masthead .inst-masthead__thesis,
  .page--institutions .inst-masthead .page__intro {
    max-width: none;
  }
  .page--institutions .inst-masthead__thesis {
    margin-bottom: var(--space-4);
    font-size: 1.3rem;
  }
  .page--institutions .inst-masthead__briefing {
    padding: var(--space-3) var(--space-2) var(--space-3) var(--space-3);
  }
  .page--institutions .inst-restraint {
    margin-top: var(--space-3);
    padding-top: var(--space-3);
  }
  .page--institutions .inst-oversight {
    margin-top: var(--space-5);
  }
  .page--institutions .inst-posture {
    margin-top: var(--space-5);
    padding-top: var(--space-4);
  }
  .page--institutions .inst-section__title {
    font-size: 1.28rem;
    margin-bottom: var(--space-3);
    padding-bottom: var(--space-2);
    max-width: none;
  }
  .page--institutions .inst-output-ledger__row,
  .page--institutions .inst-restraint-list__row {
    grid-template-columns: 1fr;
    gap: 0.35rem;
    padding: 0.75rem var(--space-2);
  }
  .page--institutions .inst-output-ledger__row::before,
  .page--institutions .inst-restraint-list__row::before {
    font-size: 0.75rem;
  }
  .page--institutions .inst-output-ledger__text,
  .page--institutions .inst-restraint-list__text {
    font-size: 0.875rem;
    overflow-wrap: break-word;
    word-break: break-word;
  }
  .page--institutions .inst-doctrine-object {
    padding: var(--space-3) var(--space-2) var(--space-4) var(--space-3);
  }
  .page--institutions .inst-doctrine-object__setup {
    margin-bottom: var(--space-3);
    padding-bottom: var(--space-3);
    font-size: 0.875rem;
  }
  .page--institutions .inst-doctrine-plate__line {
    font-size: 0.875rem;
    letter-spacing: 0.08em;
    overflow-wrap: break-word;
  }
  .page--institutions .inst-roadmap {
    padding-left: var(--space-3);
    gap: var(--space-3);
  }
  .page--institutions .inst-roadmap__stage {
    padding-left: var(--space-1);
  }
  .page--institutions .inst-roadmap__stage::before {
    left: calc(-1 * var(--space-3) - 4px);
  }
  .page--institutions .inst-roadmap__label {
    font-size: 0.75rem;
  }
  .page--institutions .inst-roadmap__items li {
    font-size: 0.875rem;
    overflow-wrap: break-word;
    word-break: break-word;
  }
  .page--institutions .inst-record-note,
  .page--institutions .inst-briefing-note {
    padding: var(--space-2) var(--space-2) var(--space-2) var(--space-3);
  }
  .page--institutions .inst-record-note p,
  .page--institutions .inst-briefing-note p {
    max-width: none;
    font-size: 0.875rem;
  }
  .page--institutions .inst-record-note__pull {
    font-size: 1rem;
  }
  .page--institutions .inst-observations {
    gap: var(--space-2);
  }
  .page--institutions .inst-restraint-list__row--records {
    padding: 0.85rem var(--space-2);
  }
  .page--institutions .inst-restraint-list__row--records .inst-restraint-list__text {
    font-size: 0.9375rem;
  }
  .page--institutions .inst-doctrine-plate__line {
    font-size: 0.8125rem;
    letter-spacing: 0.06em;
    padding: 0.85rem var(--space-2) 0.85rem var(--space-3);
  }
  .page--institutions .inst-cta {
    margin-top: var(--space-5);
  }
  .page--institutions .inst-cta {
    gap: 1rem 1.5rem;
  }
}

/* === archive ledger page === */

.page--archive {
  --arc-prose-width: 42rem;
}
.page--archive .arc-inner {
  max-width: var(--container-mid);
}

/* Masthead */
.page--archive .arc-masthead {
  margin-bottom: var(--space-4);
  padding-bottom: var(--space-4);
  border-bottom: 1px solid var(--line-soft);
  box-shadow: inset 0 -1px 0 rgba(var(--ember-rgb), 0.12);
}
.page--archive .arc-masthead .section-label {
  margin-bottom: var(--space-3);
  color: rgba(180, 192, 210, 0.95);
}
.page--archive .arc-masthead .section-label--named::before {
  color: rgba(var(--ember-rgb), 0.6);
}
.page--archive .arc-masthead h1 {
  margin-bottom: var(--space-3);
}
.page--archive .arc-masthead .page__intro {
  margin: 0;
  max-width: 62ch;
  line-height: 1.58;
}

/* Archive stat strip */
.page--archive .arc-stat-strip {
  margin: 0 0 var(--space-4);
  max-width: var(--arc-prose-width);
  padding: var(--space-2) var(--space-3);
  border: 1px solid var(--line-faint);
  border-left: 2px solid rgba(var(--ember-rgb), 0.24);
  background: rgba(var(--bg-surface-rgb), 0.1);
}
.page--archive .arc-stat-strip__meta {
  margin: 0;
  font-family: var(--font-mono);
  font-size: 0.875rem;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.5;
  color: rgba(212, 207, 194, 0.92);
  text-transform: lowercase;
}
.page--archive .arc-stat-strip__num {
  font-size: 1rem;
  font-weight: 500;
  color: var(--ember-soft);
}
.page--archive .arc-stat-strip__sep {
  margin: 0 0.35rem;
  color: rgba(180, 192, 210, 0.5);
}

/* Rubric note */
.page--archive .arc-rubric {
  margin: 0 0 var(--space-4);
  max-width: var(--arc-prose-width);
  padding: var(--space-2) var(--space-3);
  border: 1px solid var(--line-faint);
  background: rgba(var(--bg-base-rgb), 0.22);
}
.page--archive .arc-rubric__lead {
  margin: 0 0 var(--space-2);
  font-family: var(--font-body);
  font-size: 0.9rem;
  line-height: 1.55;
  color: var(--ink-soft);
}
.page--archive .arc-rubric__scale {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-2);
  padding-top: var(--space-2);
  border-top: 1px solid var(--line-faint);
}
.page--archive .arc-rubric__end {
  font-family: var(--font-body);
  font-size: 0.85rem;
  line-height: 1.45;
  color: rgba(212, 207, 194, 0.92);
}
.page--archive .arc-rubric__end strong {
  font-family: var(--font-mono);
  font-weight: 500;
  font-size: 1rem;
  letter-spacing: 0.04em;
  color: rgba(180, 192, 210, 0.95);
}
.page--archive .arc-rubric__end--high strong {
  color: var(--ember-soft);
}

/* Featured case record */
.page--archive .arc-featured {
  margin-bottom: var(--space-5);
  max-width: var(--arc-prose-width);
  padding: var(--space-3) var(--space-3) var(--space-3) var(--space-4);
  border: 1px solid var(--line-soft);
  border-left: 3px solid rgba(var(--ember-rgb), 0.38);
  background: rgba(var(--bg-surface-rgb), 0.14);
}
.page--archive .arc-featured__label {
  display: block;
  margin-bottom: 0.5rem;
  font-family: var(--font-mono);
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  line-height: 1.25;
  color: rgba(var(--ember-rgb), 0.72);
}
.page--archive .arc-featured__title {
  margin: 0 0 var(--space-3);
  font-family: var(--font-display);
  font-size: clamp(1.2rem, 1.8vw, 1.45rem);
  font-weight: 450;
  letter-spacing: -0.01em;
  line-height: 1.3;
  color: var(--ink-luminous);
}
.page--archive .arc-featured__meta {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-2);
  margin: 0 0 var(--space-3);
  padding: var(--space-2) 0 0;
  border-top: 1px solid var(--line-faint);
}
.page--archive .arc-featured__meta-item dt {
  margin: 0 0 0.25rem;
  font-family: var(--font-mono);
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  line-height: 1.25;
  color: rgba(var(--ember-rgb), 0.65);
}
.page--archive .arc-featured__meta-item dd {
  margin: 0;
  font-family: var(--font-mono);
  font-size: 0.76rem;
  letter-spacing: 0.04em;
  color: rgba(212, 207, 194, 0.94);
}
.page--archive .arc-featured__meta-item:nth-child(3) dd {
  color: var(--ember-soft);
  font-weight: 500;
}
.page--archive .arc-featured__body {
  display: grid;
  gap: var(--space-3);
}
.page--archive .arc-featured__prompts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-2);
}
.page--archive .arc-prompt-field {
  padding: var(--space-2);
  border: 1px solid var(--line-faint);
  background: rgba(var(--bg-base-rgb), 0.35);
}
.page--archive .arc-prompt-field__label {
  display: block;
  margin-bottom: 0.4rem;
  font-family: var(--font-mono);
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  line-height: 1.25;
  color: rgba(var(--ember-rgb), 0.68);
}
.page--archive .arc-prompt-field p {
  margin: 0;
  font-family: var(--font-body);
  font-size: 0.85rem;
  line-height: 1.5;
  color: var(--ink-soft);
}
.page--archive .arc-featured__finding {
  padding: var(--space-2) var(--space-3);
  border: 1px solid var(--line-faint);
  border-top: 1px solid rgba(var(--ember-rgb), 0.2);
  background: rgba(var(--bg-base-rgb), 0.28);
}
.page--archive .arc-featured__finding-label {
  display: block;
  margin-bottom: 0.45rem;
  font-family: var(--font-mono);
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  line-height: 1.25;
  color: rgba(var(--ember-rgb), 0.75);
}
.page--archive .arc-featured__finding p {
  margin: 0;
  font-family: var(--font-body);
  font-size: 0.9rem;
  line-height: 1.58;
  color: var(--ink-soft);
}
.page--archive .arc-featured__note {
  margin-top: 1em;
}
.page--archive .arc-featured__link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: var(--space-3);
  font-family: var(--font-mono);
  font-size: 0.74rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink-primary);
  border-bottom: 1px solid transparent;
}
.page--archive .arc-featured__link:hover {
  color: var(--ember-soft);
  border-bottom-color: var(--ember);
}
.page--archive .arc-featured__link .arrow {
  color: var(--ember-soft);
  transition: transform 0.3s ease, color 0.25s ease;
}
.page--archive .arc-featured__link:hover .arrow {
  transform: translateX(4px);
  color: var(--ember-bright);
}

/* Ledger */
.page--archive .arc-ledger-wrap {
  max-width: var(--arc-prose-width);
  margin-bottom: var(--space-4);
}
.page--archive .arc-ledger {
  border: 1px solid var(--line-soft);
  border-top: 1px solid rgba(var(--ember-rgb), 0.22);
  background: rgba(var(--bg-base-rgb), 0.25);
  overflow: hidden;
}
.page--archive .arc-ledger__head,
.page--archive .arc-record--held,
.page--archive .arc-record--tail,
.page--archive .arc-record__link {
  display: grid;
  grid-template-columns: 5.5rem 5rem minmax(0, 1fr) 9.5rem 3.75rem;
  gap: 0.65rem;
  padding: 0.65rem var(--space-2);
  align-items: center;
  border-bottom: 1px solid var(--line-faint);
}
.page--archive .arc-record--public {
  display: block;
  padding: 0;
  border-bottom: none;
}
.page--archive .arc-record__link {
  width: 100%;
  margin: 0;
  color: inherit;
  text-decoration: none;
  border: none;
  cursor: pointer;
  transition: background 0.2s ease;
}
.page--archive .arc-ledger__head {
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.35;
  color: rgba(var(--ember-rgb), 0.78);
  background: rgba(var(--bg-surface-rgb), 0.2);
  border-bottom: 1px solid var(--line-soft);
}
.page--archive .arc-ledger__gap-col {
  text-align: right;
}
.page--archive .arc-ledger__list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.page--archive .arc-record {
  margin: 0;
  padding: 0;
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  letter-spacing: 0.04em;
  line-height: 1.35;
}
.page--archive .arc-record:last-child {
  border-bottom: none;
}
.page--archive .arc-record--held,
.page--archive .arc-record--tail {
  padding: 0.65rem var(--space-2);
  cursor: default;
}
.page--archive .arc-record__main {
  display: block;
  min-width: 0;
}
.page--archive .arc-record__status {
  display: block;
  margin-bottom: 0.2rem;
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.35;
  color: rgba(180, 192, 210, 0.72);
}
.page--archive .arc-record--public .arc-record__status {
  color: rgba(var(--ember-rgb), 0.72);
}
.page--archive .arc-record--held .arc-record__status {
  color: rgba(180, 192, 210, 0.65);
}
.page--archive .arc-record--tail .arc-record__status {
  color: rgba(180, 192, 210, 0.58);
  font-style: italic;
}
.page--archive .arc-record__date {
  font-size: 0.8125rem;
  color: rgba(180, 192, 210, 0.88);
}
.page--archive .arc-record__id {
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(212, 207, 194, 0.92);
}
.page--archive .arc-record__title {
  display: block;
  font-family: var(--font-display);
  font-size: 0.92rem;
  letter-spacing: -0.005em;
  text-transform: none;
  color: var(--ink-primary);
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
}
.page--archive .arc-record__arrow {
  margin-left: 0.15rem;
  font-size: 0.72rem;
  color: rgba(var(--ember-rgb), 0.45);
  transition: transform 0.2s ease, color 0.2s ease;
}
.page--archive .arc-record--public:hover {
  background: rgba(var(--ember-rgb), 0.07);
}
.page--archive .arc-record--public:hover .arc-record__title {
  color: var(--ember-soft);
}
.page--archive .arc-record--public:hover .arc-record__arrow {
  color: var(--ember-soft);
  transform: translateX(2px);
}
.page--archive .arc-record__link:focus-visible {
  outline: 2px solid rgba(var(--ember-rgb), 0.45);
  outline-offset: -2px;
  background: rgba(var(--ember-rgb), 0.06);
}
.page--archive .arc-record__type {
  font-size: 0.8125rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(180, 192, 210, 0.85);
}
.page--archive .arc-record__type-tag {
  color: rgba(180, 192, 210, 0.75);
}
.page--archive .arc-record__gap {
  text-align: right;
  font-family: var(--font-mono);
  font-size: 0.875rem;
  font-weight: 500;
  color: rgba(212, 207, 194, 0.9);
}

/* Hypothesis / lead record */
.page--archive .arc-record--hypothesis .arc-record__id,
.page--archive .arc-record--lead .arc-record__id {
  color: var(--ember-soft);
}
.page--archive .arc-record--hypothesis .arc-record__gap,
.page--archive .arc-record--lead .arc-record__gap {
  color: var(--ember-soft);
}
.page--archive .arc-record--lead {
  border-left: 2px solid rgba(var(--ember-rgb), 0.28);
}
.page--archive .arc-record--lead .arc-record__link {
  background: rgba(var(--ember-rgb), 0.04);
}

/* Control / held records */
.page--archive .arc-record--control,
.page--archive .arc-record--held {
  background: rgba(var(--bg-surface-rgb), 0.06);
  border-left: 2px solid rgba(180, 192, 210, 0.12);
}
.page--archive .arc-record--control .arc-record__id,
.page--archive .arc-record--held .arc-record__id {
  color: rgba(180, 192, 210, 0.7);
}
.page--archive .arc-record--control .arc-record__type-tag,
.page--archive .arc-record--held .arc-record__type-tag {
  font-weight: 500;
  color: rgba(180, 192, 210, 0.6);
}
.page--archive .arc-record--control .arc-record__title,
.page--archive .arc-record--held .arc-record__title {
  font-family: var(--font-display);
  font-size: 0.9375rem;
  font-weight: 450;
  letter-spacing: -0.005em;
  color: rgba(212, 207, 194, 0.88);
}
.page--archive .arc-record--control .arc-record__gap,
.page--archive .arc-record--held .arc-record__gap {
  color: rgba(180, 192, 210, 0.78);
}

/* Continuation row */
.page--archive .arc-record--continuation,
.page--archive .arc-record--tail {
  border-top: 1px dashed rgba(var(--ember-rgb), 0.2);
  background: rgba(var(--bg-base-rgb), 0.12);
  font-style: normal;
}
.page--archive .arc-record--continuation .arc-record__date,
.page--archive .arc-record--continuation .arc-record__gap,
.page--archive .arc-record--tail .arc-record__date,
.page--archive .arc-record--tail .arc-record__gap {
  color: rgba(180, 192, 210, 0.5);
}
.page--archive .arc-record--continuation .arc-record__id,
.page--archive .arc-record--tail .arc-record__id {
  font-weight: 500;
  letter-spacing: 0.12em;
  color: rgba(180, 192, 210, 0.72);
}
.page--archive .arc-record--continuation .arc-record__title,
.page--archive .arc-record--tail .arc-record__title {
  font-family: var(--font-mono);
  font-size: 0.66rem;
  letter-spacing: 0.06em;
  color: rgba(180, 192, 210, 0.65);
}
.page--archive .arc-record--continuation .arc-record__type,
.page--archive .arc-record--tail .arc-record__type {
  font-style: italic;
  color: rgba(180, 192, 210, 0.55);
}

/* CTA */
.page--archive .arc-cta {
  margin-top: var(--space-5);
  padding-top: var(--space-4);
  border-top: 1px solid var(--line-soft);
}
.page--archive .arc-cta a .arrow {
  color: var(--ember-soft);
  transition: transform 0.3s ease, color 0.25s ease;
}
.page--archive .arc-cta a:hover .arrow {
  transform: translateX(4px);
  color: var(--ember-bright);
}

@media (max-width: 699px) {
  .page--archive {
    --arc-prose-width: 100%;
  }
  .page--archive .arc-masthead .page__intro {
    max-width: none;
  }
  .page--archive .arc-stat-strip__meta {
    font-size: 0.8125rem;
    letter-spacing: 0.04em;
  }
  .page--archive .arc-stat-strip__num {
    font-size: 0.875rem;
  }
  .page--archive .arc-rubric__scale {
    grid-template-columns: 1fr;
  }
  .page--archive .arc-featured__label,
  .page--archive .arc-featured__meta-item dt,
  .page--archive .arc-prompt-field__label,
  .page--archive .arc-featured__finding-label {
    font-size: 0.875rem;
    letter-spacing: 0.04em;
  }
  .page--archive .arc-featured__meta {
    grid-template-columns: 1fr;
    gap: var(--space-2);
  }
  .page--archive .arc-record__status {
    font-size: 0.875rem;
    letter-spacing: 0.04em;
  }
  .page--archive .arc-featured__prompts {
    grid-template-columns: 1fr;
  }
  .page--archive .arc-ledger__head {
    display: none;
  }
  .page--archive .arc-record--held,
  .page--archive .arc-record--tail,
  .page--archive .arc-record__link {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto auto auto;
    gap: 0.3rem 0.75rem;
    padding: var(--space-2);
  }
  .page--archive .arc-record__date {
    grid-column: 1;
    grid-row: 1;
  }
  .page--archive .arc-record__id {
    grid-column: 2;
    grid-row: 1;
    text-align: right;
  }
  .page--archive .arc-record__main {
    grid-column: 1 / -1;
    grid-row: 2;
  }
  .page--archive .arc-record__title {
    font-size: 0.88rem;
  }
  .page--archive .arc-record--public .arc-record__title {
    font-size: 0.95rem;
  }
  .page--archive .arc-record__type {
    grid-column: 1;
    grid-row: 3;
  }
  .page--archive .arc-record__gap {
    grid-column: 2;
    grid-row: 3;
    text-align: right;
  }
  .page--archive .arc-record--lead {
    border-left-width: 2px;
  }
}

/* === public interest record page === */

.page--public-interest {
  --pi-prose-width: 42rem;
  --pi-type-thesis: clamp(1.4rem, 2.5vw, 1.75rem);
  --pi-type-section: clamp(1.75rem, 2.75vw, 2.125rem);
  --pi-type-body: 0.9375rem;
  --pi-type-label: 0.8125rem;
  --pi-type-closing: clamp(1.05rem, 1.5vw, 1.15rem);
}

/* Masthead */
.page--public-interest .pi-masthead {
  margin-bottom: var(--space-6);
  padding-bottom: var(--space-6);
  border-bottom: 1px solid rgba(var(--ember-rgb), 0.34);
  box-shadow: inset 0 -2px 0 rgba(var(--ember-rgb), 0.16);
}
.page--public-interest .pi-masthead .section-label {
  margin-bottom: var(--space-3);
  color: rgba(180, 192, 210, 0.98);
}
.page--public-interest .pi-masthead .section-label--named::before {
  color: rgba(var(--ember-rgb), 0.78);
}
.page--public-interest .pi-masthead h1 {
  margin-bottom: var(--space-4);
  color: rgba(242, 232, 220, 0.98);
}
.page--public-interest .pi-masthead__thesis {
  margin: 0;
  max-width: 52ch;
  font-family: var(--font-display);
  font-size: var(--pi-type-thesis);
  line-height: 1.34;
  letter-spacing: -0.012em;
  color: rgba(242, 232, 220, 0.98);
}

/* Section blocks — chapter breaks */
.page--public-interest .pi-section {
  margin-bottom: var(--space-6);
  padding-top: var(--space-6);
  border-top: 1px solid var(--line-faint);
}
.page--public-interest .pi-masthead + .pi-section {
  padding-top: var(--space-5);
}
.page--public-interest .pi-records {
  border-top: none;
}
.page--public-interest .pi-section__title {
  margin: 0 0 var(--space-5);
  padding: 0 0 var(--space-3);
  max-width: var(--pi-prose-width);
  border: none;
  border-bottom: 1px solid rgba(var(--ember-rgb), 0.16);
  box-shadow: 0 2px 0 rgba(var(--ember-rgb), 0.08);
  font-family: var(--font-display);
  font-size: var(--pi-type-section);
  font-weight: 500;
  letter-spacing: -0.018em;
  line-height: 1.22;
  color: rgba(242, 232, 220, 0.98);
}
.page--public-interest .pi-section__title + .pi-record-note,
.page--public-interest .pi-section__title + .pi-doctrine-plate,
.page--public-interest .pi-section__title + .pi-output-ledger {
  margin-top: var(--space-5);
}

/* Record notes */
.page--public-interest .pi-record-note {
  max-width: var(--pi-prose-width);
  padding: var(--space-2) var(--space-2) var(--space-2) var(--space-3);
  border: none;
  border-left: 2px solid rgba(var(--ember-rgb), 0.28);
  background: rgba(var(--bg-surface-rgb), 0.06);
}
.page--public-interest .pi-record-note p {
  margin: 0;
  max-width: 60ch;
  font-family: var(--font-body);
  font-size: var(--pi-type-body);
  line-height: 1.62;
  color: var(--ink-soft);
}

/* Doctrine — strongest argument block */
.page--public-interest .pi-doctrine .pi-section__title {
  border-bottom-color: rgba(var(--ember-rgb), 0.24);
  box-shadow: 0 2px 0 rgba(var(--ember-rgb), 0.12);
}
.page--public-interest .pi-doctrine-plate {
  max-width: var(--pi-prose-width);
  padding: var(--space-4) var(--space-3) var(--space-4) var(--space-4);
  border: 1px solid var(--line-soft);
  border-left: 3px solid rgba(var(--ember-rgb), 0.42);
  background: rgba(var(--bg-base-rgb), 0.22);
  box-shadow: inset 0 1px 0 rgba(var(--ember-rgb), 0.08);
}
.page--public-interest .pi-doctrine-plate p {
  margin: 0 0 0.85em;
  max-width: 60ch;
  font-family: var(--font-body);
  font-size: var(--pi-type-body);
  line-height: 1.62;
  color: var(--ink-soft);
}
.page--public-interest .pi-doctrine-plate p:last-child {
  margin-bottom: 0;
}
.page--public-interest .pi-doctrine-plate p:first-child {
  font-family: var(--font-display);
  font-size: clamp(1.05rem, 1.5vw, 1.2rem);
  font-weight: 500;
  letter-spacing: -0.008em;
  line-height: 1.42;
  color: var(--ink-luminous);
}

/* Credibility closing — final argument, not footnote */
.page--public-interest .pi-credibility {
  margin-bottom: var(--space-5);
  padding-top: var(--space-6);
  border-top: 1px solid rgba(var(--ember-rgb), 0.28);
  box-shadow: inset 0 1px 0 rgba(var(--ember-rgb), 0.1);
}
.page--public-interest .pi-record-note--closing {
  padding: var(--space-4) var(--space-3) var(--space-4) var(--space-4);
  border: 1px solid var(--line-soft);
  border-left: 3px solid rgba(var(--ember-rgb), 0.42);
  background: rgba(var(--bg-base-rgb), 0.24);
  box-shadow: inset 0 1px 0 rgba(var(--ember-rgb), 0.08);
}
.page--public-interest .pi-record-note--closing p {
  max-width: 58ch;
  font-family: var(--font-display);
  font-size: var(--pi-type-closing);
  line-height: 1.48;
  color: rgba(242, 232, 220, 0.96);
}

/* Public-record output ledger */
.page--public-interest .pi-output-ledger {
  margin: 0;
  padding: 0;
  max-width: var(--pi-prose-width);
  border: 1px solid var(--line-soft);
  border-top: 1px solid rgba(var(--ember-rgb), 0.22);
  border-left: 2px solid rgba(var(--ember-rgb), 0.24);
  background: rgba(var(--bg-base-rgb), 0.28);
  overflow: hidden;
}
.page--public-interest .pi-output-ledger__row {
  display: grid;
  grid-template-columns: 5.25rem minmax(0, 1fr);
  gap: var(--space-2);
  margin: 0;
  padding: 0.65rem var(--space-3);
  align-items: baseline;
  border-bottom: 1px solid var(--line-faint);
}
.page--public-interest .pi-output-ledger__row:last-child {
  border-bottom: none;
}
.page--public-interest .pi-output-ledger__row:nth-child(even) {
  background: rgba(var(--bg-surface-rgb), 0.12);
}
.page--public-interest .pi-output-ledger__label {
  margin: 0;
  padding-top: 0.1rem;
  font-family: var(--font-mono);
  font-size: var(--pi-type-label);
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.3;
  color: rgba(var(--ember-rgb), 0.78);
}
.page--public-interest .pi-output-ledger__desc {
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--pi-type-body);
  line-height: 1.58;
  color: rgba(212, 207, 194, 0.94);
}

/* CTA row */
.page--public-interest .pi-cta {
  margin-top: var(--space-6);
  padding-top: var(--space-5);
  border-top: 1px solid rgba(var(--ember-rgb), 0.22);
  box-shadow: inset 0 1px 0 rgba(var(--ember-rgb), 0.06);
}
.page--public-interest .pi-cta a .arrow {
  color: var(--ember-soft);
  transition: transform 0.3s ease, color 0.25s ease;
}
.page--public-interest .pi-cta a:hover .arrow {
  transform: translateX(4px);
  color: var(--ember-bright);
}

@media (max-width: 699px) {
  .page--public-interest {
    --pi-prose-width: 100%;
    --pi-type-section: 1.45rem;
    --pi-type-closing: 1.05rem;
  }
  .page--public-interest .pi-masthead {
    margin-bottom: var(--space-5);
    padding-bottom: var(--space-5);
  }
  .page--public-interest .pi-masthead__thesis {
    max-width: none;
    font-size: 1.35rem;
  }
  .page--public-interest .pi-section {
    margin-bottom: var(--space-5);
    padding-top: var(--space-5);
  }
  .page--public-interest .pi-masthead + .pi-section {
    padding-top: var(--space-4);
  }
  .page--public-interest .pi-section__title {
    margin-bottom: var(--space-4);
    padding-bottom: var(--space-3);
    max-width: none;
  }
  .page--public-interest .pi-section__title + .pi-record-note,
  .page--public-interest .pi-section__title + .pi-doctrine-plate,
  .page--public-interest .pi-section__title + .pi-output-ledger {
    margin-top: var(--space-4);
  }
  .page--public-interest .pi-record-note p,
  .page--public-interest .pi-doctrine-plate p {
    max-width: none;
  }
  .page--public-interest .pi-doctrine-plate p:first-child {
    font-size: 1.05rem;
  }
  .page--public-interest .pi-record-note--closing {
    padding: var(--space-3) var(--space-2) var(--space-3) var(--space-3);
  }
  .page--public-interest .pi-output-ledger__row {
    grid-template-columns: 4.75rem minmax(0, 1fr);
    gap: var(--space-2);
    padding: 0.75rem var(--space-2);
  }
  .page--public-interest .pi-output-ledger__label {
    font-size: 0.75rem;
  }
  .page--public-interest .pi-output-ledger__desc {
    font-size: 0.9375rem;
    overflow-wrap: break-word;
  }
}

/* === readers guide page === */

.page--readers {
  --rd-prose-width: 42rem;
  --rd-type-thesis: clamp(1.4rem, 2.5vw, 1.75rem);
  --rd-type-section: clamp(1.75rem, 2.75vw, 2.125rem);
  --rd-type-body: 0.9375rem;
  --rd-type-label: 0.8125rem;
  --rd-type-support: 1rem;
}

/* Masthead */
.page--readers .rd-masthead {
  margin-bottom: var(--space-6);
  padding-bottom: var(--space-6);
  border-bottom: 1px solid rgba(var(--ember-rgb), 0.22);
  box-shadow: inset 0 -2px 0 rgba(var(--ember-rgb), 0.1);
}
.page--readers .rd-masthead .section-label {
  margin-bottom: var(--space-3);
  color: rgba(180, 192, 210, 0.95);
}
.page--readers .rd-masthead .section-label--named::before {
  color: rgba(var(--ember-rgb), 0.62);
}
.page--readers .rd-masthead h1 {
  margin-bottom: var(--space-4);
  color: rgba(242, 232, 220, 0.98);
}
.page--readers .rd-masthead__thesis {
  margin: 0 0 var(--space-5);
  max-width: 48ch;
  font-family: var(--font-display);
  font-size: var(--rd-type-thesis);
  line-height: 1.34;
  letter-spacing: -0.012em;
  color: rgba(242, 232, 220, 0.98);
}
.page--readers .rd-masthead .page__intro {
  margin: 0 0 var(--space-2);
  max-width: 58ch;
  font-family: var(--font-body);
  font-size: var(--rd-type-body);
  line-height: 1.62;
  color: rgba(212, 207, 194, 0.92);
}
.page--readers .rd-masthead__support {
  margin-bottom: 0;
  max-width: 56ch;
  color: rgba(212, 207, 194, 0.88);
}

/* Section blocks — chapter breaks */
.page--readers .rd-section {
  margin-bottom: var(--space-6);
  padding-top: var(--space-6);
  border-top: 1px solid var(--line-faint);
}
.page--readers .rd-masthead + .rd-section {
  padding-top: var(--space-5);
}
.page--readers .rd-section__title {
  margin: 0 0 var(--space-5);
  padding: 0 0 var(--space-3);
  max-width: var(--rd-prose-width);
  border: none;
  border-bottom: 1px solid rgba(var(--ember-rgb), 0.16);
  box-shadow: 0 2px 0 rgba(var(--ember-rgb), 0.08);
  font-family: var(--font-display);
  font-size: var(--rd-type-section);
  font-weight: 500;
  letter-spacing: -0.018em;
  line-height: 1.22;
  color: rgba(242, 232, 220, 0.98);
}
.page--readers .rd-section__title + .rd-doctrine-plate,
.page--readers .rd-section__title + .rd-record-note,
.page--readers .rd-section__title + .rd-question-ledger,
.page--readers .rd-section__title + .rd-inspect-ledger,
.page--readers .rd-section__title + .rd-signal-ledger {
  margin-top: var(--space-5);
}

/* Record notes — archival, subordinate to section title */
.page--readers .rd-record-note {
  max-width: var(--rd-prose-width);
  padding: var(--space-2) var(--space-2) var(--space-2) var(--space-3);
  border: none;
  border-left: 2px solid rgba(var(--ember-rgb), 0.24);
  background: rgba(var(--bg-surface-rgb), 0.06);
}
.page--readers .rd-record-note:not(.rd-record-note--follow) {
  margin-bottom: var(--space-3);
}
.page--readers .rd-record-note--follow {
  margin-top: var(--space-3);
}
.page--readers .rd-record-note p {
  margin: 0;
  max-width: 60ch;
  font-family: var(--font-body);
  font-size: var(--rd-type-body);
  line-height: 1.62;
  color: rgba(212, 207, 194, 0.9);
}
.page--readers .rd-record-note:not(.rd-record-note--follow) + .rd-question-ledger,
.page--readers .rd-record-note:not(.rd-record-note--follow) + .rd-inspect-ledger,
.page--readers .rd-record-note:not(.rd-record-note--follow) + .rd-signal-ledger {
  margin-top: var(--space-3);
}

/* Doctrine plate — archival note, not terminal block */
.page--readers .rd-doctrine-plate {
  max-width: var(--rd-prose-width);
  padding: var(--space-2) var(--space-2) var(--space-2) var(--space-3);
  border: none;
  border-left: 2px solid rgba(var(--ember-rgb), 0.26);
  background: rgba(var(--bg-surface-rgb), 0.06);
}
.page--readers .rd-doctrine-plate p {
  margin: 0;
  max-width: 60ch;
  font-family: var(--font-body);
  font-size: var(--rd-type-body);
  letter-spacing: normal;
  line-height: 1.62;
  color: rgba(212, 207, 194, 0.92);
}

/* Shared ledger base */
.page--readers .rd-question-ledger,
.page--readers .rd-inspect-ledger,
.page--readers .rd-signal-ledger {
  margin: var(--space-3) 0 0;
  padding: 0;
  max-width: var(--rd-prose-width);
  border: 1px solid var(--line-soft);
  border-top: 1px solid rgba(var(--ember-rgb), 0.18);
  border-left: 2px solid rgba(var(--ember-rgb), 0.22);
  background: rgba(var(--bg-base-rgb), 0.22);
  overflow: hidden;
}
.page--readers .rd-question-ledger__row,
.page--readers .rd-inspect-ledger__row,
.page--readers .rd-signal-ledger__row {
  display: grid;
  grid-template-columns: 5.25rem minmax(0, 1fr);
  gap: var(--space-2) var(--space-3);
  margin: 0;
  padding: 0.8rem var(--space-3);
  align-items: start;
  border-bottom: 1px solid var(--line-faint);
}
.page--readers .rd-question-ledger__row:last-child,
.page--readers .rd-inspect-ledger__row:last-child,
.page--readers .rd-signal-ledger__row:last-child {
  border-bottom: none;
}
.page--readers .rd-question-ledger__row:nth-child(even),
.page--readers .rd-inspect-ledger__row:nth-child(even),
.page--readers .rd-signal-ledger__row:nth-child(even) {
  background: rgba(var(--bg-surface-rgb), 0.08);
}
.page--readers .rd-question-ledger__label,
.page--readers .rd-inspect-ledger__label,
.page--readers .rd-signal-ledger__label {
  margin: 0;
  padding-top: 0.15rem;
  font-family: var(--font-mono);
  font-size: var(--rd-type-label);
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.3;
  color: rgba(var(--ember-rgb), 0.72);
}
.page--readers .rd-question-ledger__desc,
.page--readers .rd-inspect-ledger__desc,
.page--readers .rd-signal-ledger__desc {
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--rd-type-body);
  line-height: 1.58;
  color: rgba(212, 207, 194, 0.94);
}

/* CTA row */
.page--readers .rd-cta {
  margin-top: var(--space-5);
  padding-top: var(--space-4);
  border-top: 1px solid var(--line-soft);
}
.page--readers .rd-cta a .arrow {
  color: var(--ember-soft);
  transition: transform 0.3s ease, color 0.25s ease;
}
.page--readers .rd-cta a:hover .arrow {
  transform: translateX(4px);
  color: var(--ember-bright);
}

@media (max-width: 699px) {
  .page--readers {
    --rd-prose-width: 100%;
    --rd-type-section: 1.45rem;
  }
  .page--readers .rd-masthead {
    margin-bottom: var(--space-5);
    padding-bottom: var(--space-5);
  }
  .page--readers .rd-masthead__thesis,
  .page--readers .rd-masthead .page__intro,
  .page--readers .rd-masthead__support {
    max-width: none;
  }
  .page--readers .rd-masthead__thesis {
    margin-bottom: var(--space-4);
    font-size: 1.35rem;
  }
  .page--readers .rd-section {
    margin-bottom: var(--space-5);
    padding-top: var(--space-5);
  }
  .page--readers .rd-masthead + .rd-section {
    padding-top: var(--space-4);
  }
  .page--readers .rd-section__title {
    margin-bottom: var(--space-4);
    padding-bottom: var(--space-3);
    max-width: none;
  }
  .page--readers .rd-section__title + .rd-doctrine-plate,
  .page--readers .rd-section__title + .rd-record-note,
  .page--readers .rd-section__title + .rd-question-ledger,
  .page--readers .rd-section__title + .rd-inspect-ledger,
  .page--readers .rd-section__title + .rd-signal-ledger {
    margin-top: var(--space-4);
  }
  .page--readers .rd-record-note p,
  .page--readers .rd-doctrine-plate p {
    max-width: none;
    font-size: 0.875rem;
  }
  .page--readers .rd-question-ledger__row,
  .page--readers .rd-inspect-ledger__row,
  .page--readers .rd-signal-ledger__row {
    grid-template-columns: 1fr;
    gap: 0.3rem;
    padding: 0.75rem var(--space-2);
  }
  .page--readers .rd-question-ledger__label,
  .page--readers .rd-inspect-ledger__label,
  .page--readers .rd-signal-ledger__label {
    font-size: 0.75rem;
    letter-spacing: 0.04em;
    padding-top: 0;
  }
  .page--readers .rd-question-ledger__desc,
  .page--readers .rd-inspect-ledger__desc,
  .page--readers .rd-signal-ledger__desc {
    font-size: 0.875rem;
    overflow-wrap: break-word;
  }
}

/* === volunteer gap concept page === */

.page--volunteer-gap {
  --vg-prose-width: 42rem;
}

/* Hero — concept opening sequence */
.page--volunteer-gap .vg-hero {
  position: relative;
  margin-bottom: var(--space-6);
  padding: clamp(2rem, 5vh, 3.5rem) 0 clamp(0.5rem, 2vh, 1.25rem);
  overflow: hidden;
  isolation: isolate;
}
.page--volunteer-gap .vg-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 72% 58% at 50% 38%, rgba(var(--bg-surface-rgb), 0.16), transparent 68%),
    linear-gradient(180deg, transparent 0%, transparent 78%, rgba(var(--bg-deep-rgb), 0.12) 100%);
  pointer-events: none;
  z-index: 0;
}
.page--volunteer-gap .vg-hero__stage {
  position: relative;
  z-index: 1;
  max-width: var(--vg-prose-width);
}
.page--volunteer-gap .vg-hero .section-label {
  margin-bottom: var(--space-3);
  color: rgba(180, 192, 210, 0.95);
}
.page--volunteer-gap .vg-hero .section-label--named::before {
  color: rgba(var(--ember-rgb), 0.6);
}
.page--volunteer-gap .vg-hero__title {
  margin: 0 0 var(--space-4);
  font-family: var(--font-display);
  font-size: clamp(1.25rem, 2vw, 1.6rem);
  font-weight: 450;
  letter-spacing: -0.015em;
  line-height: 1.25;
  color: rgba(180, 192, 210, 0.88);
}
.page--volunteer-gap .vg-hero__sequence {
  display: grid;
  gap: clamp(0.55rem, 1.6vh, 1rem);
  margin: 0;
}
.page--volunteer-gap .vg-hero__sequence .gap__line {
  margin: 0;
}
.page--volunteer-gap .vg-hero__line--obs {
  font-family: var(--font-display);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -0.02em;
}
.page--volunteer-gap .vg-hero__line--obs.gap__line--knows {
  font-size: clamp(1.75rem, 4.4vw, 3rem);
  color: var(--ink-luminous);
  padding-left: 0;
}
.page--volunteer-gap .vg-hero__line--obs.gap__line--surfaces {
  font-size: clamp(1.55rem, 3.8vw, 2.65rem);
  color: var(--ink-soft);
  padding-left: clamp(0.35rem, 1.2vw, 0.75rem);
}
.page--volunteer-gap .vg-hero__line--obs.gap__line--leaves {
  font-size: clamp(1.4rem, 3.4vw, 2.35rem);
  font-style: italic;
  color: rgba(180, 192, 210, 0.9);
  padding-left: clamp(0.65rem, 2vw, 1.25rem);
}
.page--volunteer-gap .vg-hero__em {
  background: linear-gradient(180deg, var(--ember-bright) 0%, var(--ember) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-style: inherit;
}
.page--volunteer-gap .vg-hero__line--conclusion {
  margin-top: clamp(0.85rem, 2.2vh, 1.5rem);
  padding-top: clamp(0.85rem, 2.2vh, 1.35rem);
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(2.1rem, 5.8vw, 3.85rem);
  line-height: 1.02;
  letter-spacing: -0.028em;
  color: var(--ink-luminous);
  border-top: 1px solid rgba(var(--ember-rgb), 0.2);
}
.page--volunteer-gap .vg-hero__line--conclusion strong {
  font-weight: 400;
  background: linear-gradient(180deg, var(--ember-bright) 0%, var(--ember) 92%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 0 20px rgba(var(--ember-rgb), 0.26));
}
.page--volunteer-gap .vg-hero__horizon {
  margin-top: clamp(1.25rem, 3vh, 2rem);
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, var(--line-faint) 10%, rgba(var(--ember-rgb), 0.28) 50%, var(--line-faint) 90%, transparent 100%);
}

/* Definition — instrument note below punchline */
.page--volunteer-gap .vg-hero__definition {
  margin: clamp(0.85rem, 2vh, 1.25rem) 0 0;
  padding: 0.75rem 0 0.55rem var(--space-3);
  max-width: 58ch;
  border: none;
  border-left: 2px solid rgba(var(--ember-rgb), 0.22);
  background: rgba(var(--bg-surface-rgb), 0.06);
}
.page--volunteer-gap .vg-hero__definition::before {
  content: "Definition";
  display: block;
  margin-bottom: 0.45rem;
  font-family: var(--font-mono);
  font-size: 0.9375rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  line-height: 1.25;
  color: rgba(var(--ember-rgb), 0.78);
}
.page--volunteer-gap .vg-definition-plate .page__lede {
  margin: 0;
  max-width: 56ch;
  font-family: var(--font-body);
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: normal;
  line-height: 1.65;
  color: var(--ink-primary);
}

/* Section blocks — spacing rhythm over rules */
.page--volunteer-gap .vg-section {
  margin-bottom: var(--space-6);
  padding-top: 0;
  border-top: none;
}
.page--volunteer-gap .vg-section + .vg-section {
  margin-top: var(--space-1);
}
.page--volunteer-gap .vg-section__title {
  margin: 0 0 var(--space-3);
  padding: 0;
  border: none;
  font-family: var(--font-display);
  font-size: clamp(1.2rem, 1.8vw, 1.45rem);
  font-weight: 450;
  letter-spacing: -0.01em;
  line-height: 1.3;
  color: var(--ink-luminous);
}
.page--volunteer-gap .vg-ephemeral .vg-section__title {
  font-size: clamp(1.65rem, 2.5vw, 2.05rem);
}

/* Mechanism ledger */
.page--volunteer-gap .vg-mechanism-ledger {
  margin: 0;
  padding: 0;
  max-width: var(--vg-prose-width);
  border: 1px solid var(--line-soft);
  border-top: 1px solid rgba(var(--ember-rgb), 0.22);
  border-left: 2px solid rgba(var(--ember-rgb), 0.24);
  background: rgba(var(--bg-base-rgb), 0.28);
  overflow: hidden;
}
.page--volunteer-gap .vg-mechanism-ledger__row {
  display: grid;
  grid-template-columns: 9.25rem minmax(0, 1fr);
  gap: var(--space-3);
  margin: 0;
  padding: 0.9rem var(--space-3);
  align-items: start;
  border-bottom: 1px solid var(--line-faint);
}
.page--volunteer-gap .vg-mechanism-ledger__row:last-child {
  border-bottom: none;
}
.page--volunteer-gap .vg-mechanism-ledger__row:nth-child(even) {
  background: rgba(var(--bg-surface-rgb), 0.12);
}
.page--volunteer-gap .vg-mechanism-ledger__label {
  margin: 0;
  padding-top: 0.1rem;
  font-family: var(--font-mono);
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.25;
  color: rgba(var(--ember-rgb), 0.82);
}
.page--volunteer-gap .vg-mechanism-ledger__desc {
  margin: 0;
  font-family: var(--font-body);
  font-size: 1rem;
  line-height: 1.62;
  color: var(--ink-primary);
}

/* Field note — core concept introduction */
.page--volunteer-gap .vg-field-note {
  max-width: var(--vg-prose-width);
  margin-bottom: var(--space-3);
  padding: 0;
  border: none;
}
.page--volunteer-gap .vg-field-note p {
  margin: 0;
  max-width: 62ch;
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.62;
  color: var(--ink-soft);
}

/* Antenna doctrine — elevated operating principle */
.page--volunteer-gap .vg-antenna-pullquote {
  margin: var(--space-3) 0 var(--space-4);
  padding: var(--space-3) var(--space-3) var(--space-3) var(--space-4);
  max-width: 40ch;
  border: none;
  border-left: 2px solid rgba(var(--ember-rgb), 0.44);
  background: rgba(var(--bg-surface-rgb), 0.1);
  box-shadow: inset 0 1px 0 rgba(var(--ember-rgb), 0.07);
  font-family: var(--font-display);
  font-size: clamp(1.05rem, 1.55vw, 1.22rem);
  font-weight: 450;
  font-style: italic;
  line-height: 1.48;
  letter-spacing: -0.008em;
  color: #F2E8DC;
}

.page--volunteer-gap .vg-signal-intro {
  margin: 0 0 var(--space-3);
  padding-left: 0;
  max-width: var(--vg-prose-width);
  font-family: var(--font-mono);
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(var(--ember-rgb), 0.72);
}

/* Record notes */
.page--volunteer-gap .vg-record-note {
  max-width: var(--vg-prose-width);
  padding: var(--space-2) 0 var(--space-2) var(--space-3);
  border-left: 1px solid rgba(var(--ember-rgb), 0.22);
}
.page--volunteer-gap .vg-record-note p {
  margin: 0;
  max-width: 62ch;
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.62;
  color: var(--ink-soft);
}

/* Signal ledger — primary object in signal section */
.page--volunteer-gap .vg-signal-ledger {
  margin: 0;
  padding: 0;
  max-width: var(--vg-prose-width);
  border: 1px solid var(--line-soft);
  border-top: 1px solid rgba(var(--ember-rgb), 0.22);
  border-left: 2px solid rgba(var(--ember-rgb), 0.24);
  background: rgba(var(--bg-base-rgb), 0.28);
  overflow: hidden;
}
.page--volunteer-gap .vg-signal-ledger__row {
  display: grid;
  grid-template-columns: 9.5rem minmax(0, 1fr);
  gap: var(--space-3);
  margin: 0;
  padding: 0.75rem var(--space-3);
  align-items: start;
  border-bottom: 1px solid var(--line-faint);
}
.page--volunteer-gap .vg-signal-ledger__row:last-child {
  border-bottom: none;
}
.page--volunteer-gap .vg-signal-ledger__row:nth-child(even) {
  background: rgba(var(--bg-surface-rgb), 0.12);
}
.page--volunteer-gap .vg-signal-ledger__label {
  margin: 0;
  padding-top: 0.1rem;
  font-family: var(--font-mono);
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.25;
  color: rgba(var(--ember-rgb), 0.82);
}
.page--volunteer-gap .vg-signal-ledger__desc {
  margin: 0;
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.58;
  color: var(--ink-primary);
}

/* Signal, not verdict — governance doctrine */
.page--volunteer-gap .vg-verdict .vg-record-note {
  padding: var(--space-2) 0 var(--space-2) var(--space-4);
  border-left: 2px solid rgba(var(--ember-rgb), 0.28);
}
.page--volunteer-gap .vg-verdict .vg-record-note p {
  font-size: 1rem;
  line-height: 1.65;
  color: var(--ink-soft);
}
.page--volunteer-gap .vg-verdict-doctrine {
  margin-top: var(--space-5);
  padding: var(--space-3) var(--space-3) var(--space-3) var(--space-4);
  border: none;
  border-left: 2px solid rgba(var(--ember-rgb), 0.4);
  background: rgba(var(--bg-surface-rgb), 0.14);
  max-width: var(--vg-prose-width);
}
.page--volunteer-gap .vg-verdict-plate {
  margin: 0;
  padding: 0;
  border: none;
  font-family: var(--font-mono);
  font-size: clamp(0.8rem, 1.2vw, 0.9rem);
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  line-height: 1.7;
  color: #F2E8DC;
}

/* CTA row */
.page--volunteer-gap .vg-cta {
  margin-top: var(--space-5);
  padding-top: var(--space-4);
  border-top: 1px solid var(--line-soft);
}
.page--volunteer-gap .vg-cta a .arrow {
  color: var(--ember-soft);
  transition: transform 0.3s ease, color 0.25s ease;
}
.page--volunteer-gap .vg-cta a:hover .arrow {
  transform: translateX(4px);
  color: var(--ember-bright);
}

@media (max-width: 699px) {
  .page--volunteer-gap {
    --vg-prose-width: 100%;
  }
  .page--volunteer-gap .vg-hero {
    padding: var(--space-4) 0 var(--space-2);
  }
  .page--volunteer-gap .vg-hero__title {
    font-size: 1.2rem;
    margin-bottom: var(--space-3);
  }
  .page--volunteer-gap .vg-hero__line--obs.gap__line--knows {
    font-size: clamp(1.55rem, 7vw, 2.25rem);
    overflow-wrap: break-word;
  }
  .page--volunteer-gap .vg-hero__line--obs.gap__line--surfaces {
    font-size: clamp(1.4rem, 6.5vw, 2rem);
  }
  .page--volunteer-gap .vg-hero__line--obs.gap__line--leaves {
    font-size: clamp(1.3rem, 6vw, 1.85rem);
  }
  .page--volunteer-gap .vg-hero__line--conclusion {
    font-size: clamp(1.85rem, 8.5vw, 2.75rem);
    overflow-wrap: break-word;
  }
  .page--volunteer-gap .vg-hero {
    margin-bottom: var(--space-4);
  }
  .page--volunteer-gap .vg-hero__definition {
    max-width: none;
  }
  .page--volunteer-gap .vg-definition-plate .page__lede {
    max-width: none;
    font-size: 0.9375rem;
    line-height: 1.62;
  }
  .page--volunteer-gap .vg-section {
    margin-bottom: var(--space-5);
  }
  .page--volunteer-gap .vg-section__title {
    font-size: 1.15rem;
  }
  .page--volunteer-gap .vg-ephemeral .vg-section__title {
    font-size: 1.6rem;
  }
  .page--volunteer-gap .vg-hero__definition::before {
    font-size: 0.875rem;
  }
  .page--volunteer-gap .vg-mechanism-ledger__row {
    grid-template-columns: 1fr;
    gap: 0.35rem;
    padding: 0.85rem var(--space-2);
  }
  .page--volunteer-gap .vg-mechanism-ledger__label {
    font-size: 0.875rem;
    letter-spacing: 0.04em;
    padding-top: 0;
  }
  .page--volunteer-gap .vg-mechanism-ledger__desc,
  .page--volunteer-gap .vg-record-note p,
  .page--volunteer-gap .vg-field-note {
    max-width: none;
  }
  .page--volunteer-gap .vg-mechanism-ledger__desc {
    font-size: 0.9375rem;
    line-height: 1.6;
    overflow-wrap: break-word;
  }
  .page--volunteer-gap .vg-field-note p {
    max-width: none;
    font-size: 0.9rem;
    line-height: 1.6;
  }
  .page--volunteer-gap .vg-verdict .vg-record-note p {
    font-size: 0.9375rem;
    line-height: 1.62;
  }
  .page--volunteer-gap .vg-antenna-pullquote {
    max-width: none;
    font-size: 1.05rem;
  }
  .page--volunteer-gap .vg-verdict-doctrine {
    padding: var(--space-2) var(--space-2) var(--space-2) var(--space-3);
  }
  .page--volunteer-gap .vg-signal-ledger__row {
    grid-template-columns: 1fr;
    gap: 0.35rem;
    padding: 0.75rem var(--space-2);
  }
  .page--volunteer-gap .vg-signal-ledger__label {
    font-size: 0.875rem;
    letter-spacing: 0.04em;
    padding-top: 0;
  }
  .page--volunteer-gap .vg-signal-ledger__desc {
    font-size: 0.9rem;
    line-height: 1.56;
    overflow-wrap: break-word;
  }
  .page--volunteer-gap .vg-verdict-plate {
    font-size: 0.72rem;
    letter-spacing: 0.1em;
  }
}

/* === contact routing page === */

.page--contact {
  --ct-prose-width: 42rem;
}

/* Masthead */
.page--contact .ct-masthead {
  margin-bottom: var(--space-5);
  padding-bottom: var(--space-4);
  border-bottom: 1px solid var(--line-soft);
  box-shadow: inset 0 -1px 0 rgba(var(--ember-rgb), 0.12);
}
.page--contact .ct-masthead .section-label {
  margin-bottom: var(--space-3);
  color: rgba(180, 192, 210, 0.95);
}
.page--contact .ct-masthead .section-label--named::before {
  color: rgba(var(--ember-rgb), 0.6);
}
.page--contact .ct-masthead h1 {
  margin-bottom: var(--space-3);
}
.page--contact .ct-masthead .page__intro {
  margin: 0;
  max-width: 62ch;
  line-height: 1.58;
}

/* Route blocks */
.page--contact .ct-routes {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  max-width: var(--ct-prose-width);
}
.page--contact .ct-route {
  margin: 0;
  padding: var(--space-3) var(--space-3) var(--space-3) var(--space-4);
  border: 1px solid var(--line-faint);
  border-left: 2px solid rgba(var(--ember-rgb), 0.26);
  background: rgba(var(--bg-base-rgb), 0.18);
}
.page--contact .ct-route__label {
  margin: 0 0 var(--space-2);
  font-family: var(--font-mono);
  font-size: 0.9375rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  line-height: 1.25;
  color: rgba(var(--ember-rgb), 0.78);
}
.page--contact .ct-route__title {
  margin: 0 0 var(--space-2);
  padding: 0;
  border: none;
  font-family: var(--font-display);
  font-size: clamp(1.15rem, 1.7vw, 1.35rem);
  font-weight: 450;
  letter-spacing: -0.01em;
  line-height: 1.3;
  color: var(--ink-luminous);
}
.page--contact .ct-route__desc {
  margin: 0 0 var(--space-3);
  max-width: 62ch;
  font-family: var(--font-body);
  font-size: 0.9375rem;
  line-height: 1.62;
  color: var(--ink-soft);
}

/* Record field strips */
.page--contact .ct-field-strip {
  margin: 0;
  padding: var(--space-2) 0 0 var(--space-3);
  border-top: 1px solid var(--line-faint);
  border-left: 1px solid rgba(var(--ember-rgb), 0.18);
}
.page--contact .ct-record-field {
  margin: 0 0 0.5rem;
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  letter-spacing: 0.04em;
  line-height: 1.55;
  color: rgba(180, 192, 210, 0.9);
}
.page--contact .ct-record-field:last-child {
  margin-bottom: 0;
}
.page--contact .ct-record-field a {
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  letter-spacing: 0.03em;
  color: var(--ink-primary);
  border-bottom: 1px solid var(--line-soft);
  text-decoration: none;
  transition: color 0.25s ease, border-color 0.25s ease;
}
.page--contact .ct-record-field a:hover,
.page--contact .ct-record-field a:focus-visible {
  color: var(--ember-soft);
  border-bottom-color: var(--ember);
  outline: none;
}
.page--contact .ct-record-field--action {
  margin: var(--space-2) 0 0;
  padding: var(--space-2) 0 0 var(--space-3);
  border-top: 1px solid var(--line-faint);
  border-left: 1px solid rgba(var(--ember-rgb), 0.18);
}
.page--contact .ct-route__action {
  font-family: var(--font-mono);
  font-size: 0.74rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink-primary);
  border-bottom: 1px solid var(--line-soft);
}
.page--contact .ct-route__action:hover,
.page--contact .ct-route__action:focus-visible {
  color: var(--ember-soft);
  border-bottom-color: var(--ember);
  outline: none;
}
.page--contact .ct-route__action .arrow {
  color: var(--ember-soft);
  transition: transform 0.3s ease, color 0.25s ease;
}
.page--contact .ct-route__action:hover .arrow,
.page--contact .ct-route__action:focus-visible .arrow {
  transform: translateX(4px);
  color: var(--ember-bright);
}

@media (max-width: 699px) {
  .page--contact {
    --ct-prose-width: 100%;
  }
  .page--contact .ct-masthead {
    margin-bottom: var(--space-4);
    padding-bottom: var(--space-3);
  }
  .page--contact .ct-masthead .page__intro {
    max-width: none;
  }
  .page--contact .ct-routes {
    gap: var(--space-3);
  }
  .page--contact .ct-route {
    padding: var(--space-3) var(--space-2) var(--space-3) var(--space-3);
  }
  .page--contact .ct-route__label {
    font-size: 0.875rem;
  }
  .page--contact .ct-route__title {
    font-size: 1.15rem;
  }
  .page--contact .ct-route__desc {
    max-width: none;
    font-size: 0.9rem;
  }
  .page--contact .ct-record-field,
  .page--contact .ct-record-field a {
    font-size: 0.78rem;
    overflow-wrap: break-word;
  }
}

/* =============================================================
   LEGIBILITY FLOORS — global size & opacity minimums
   ============================================================= */
.mono { font-size: max(0.74rem, var(--mono-min)); }

.section-label { font-size: max(0.875rem, var(--text-min)); }
.roadmap__label { font-size: max(0.8125rem, var(--mono-min)); }
.cat__id { font-size: max(0.8125rem, var(--mono-min)); }

.hero__meta { font-size: max(0.8125rem, var(--mono-min)); }
.hero__tagline { font-size: max(var(--mono-min), clamp(0.6875rem, 1.4vw, 0.8125rem)); }
.hero__capture button { font-size: max(var(--mono-min), clamp(0.875rem, 1.9vw, 1rem)); }
.hero__capture-msg { font-size: max(0.7rem, var(--mono-min)); }
.hero__microcopy { font-size: max(0.9375rem, var(--text-min)); }
.hero__secondary { font-size: max(0.8125rem, var(--mono-min)); }

.proof-strip__meta { font-size: max(0.84rem, var(--mono-min)); }
.proof-strip--landing .proof-strip__sep { color: rgba(180, 192, 210, max(0.7, var(--mono-min-opacity))); }

.gap__link { font-size: max(0.74rem, var(--mono-min)); }
.divergence__label { font-size: max(0.62rem, var(--mono-min)); }
.audience a { font-size: max(0.72rem, var(--mono-min)); }

.archive__cta { font-size: max(0.74rem, var(--mono-min)); }
.archive--home-preview .archive__cta { font-size: max(0.8125rem, var(--mono-min)); }

.field-notes__caption { font-size: max(0.875rem, var(--text-min)); }
.subscribe button { font-size: max(0.74rem, var(--mono-min)); }
.close .subscribe button { font-size: max(0.74rem, var(--mono-min)); }
.subscribe__msg { font-size: max(0.7rem, var(--mono-min)); }

.site-footer__links { font-size: max(0.88rem, var(--text-min)); }
.nav__menu-btn { font-size: max(0.74rem, var(--mono-min)); }
body:has(main > section.hero) .nav a { color: rgba(212, 207, 194, max(0.78, var(--text-min-opacity))); }

.archive--home-preview .hp-arc-metrics__label { font-size: max(0.8125rem, var(--mono-min)); }
.archive--home-preview .hp-arc-rubric__lead { font-size: max(0.9375rem, var(--text-min)); }
.archive--home-preview .hp-arc-rubric__end { font-size: max(0.9375rem, var(--text-min)); }
.archive--home-preview .hp-arc-rubric__end strong { font-size: max(0.875rem, var(--text-min)); }
.archive--home-preview .hp-arc-featured__label { font-size: max(0.8125rem, var(--mono-min)); color: rgba(var(--ember-rgb), max(0.78, var(--mono-min-opacity))); }
.archive--home-preview .hp-arc-featured__meta-item dt { font-size: max(0.8125rem, var(--mono-min)); color: rgba(var(--ember-rgb), max(0.72, var(--mono-min-opacity))); }
.archive--home-preview .hp-arc-prompt-field__label { font-size: max(0.8125rem, var(--mono-min)); color: rgba(var(--ember-rgb), max(0.72, var(--mono-min-opacity))); }
.archive--home-preview .hp-arc-featured__finding-label { font-size: max(0.8125rem, var(--mono-min)); }
.archive--home-preview .hp-arc-featured__finding p { font-size: max(0.9375rem, var(--text-min)); }
.archive--home-preview .hp-arc-ledger__head { font-size: max(0.8125rem, var(--mono-min)); color: rgba(var(--ember-rgb), max(0.78, var(--mono-min-opacity))); }
.archive--home-preview .hp-arc-record { font-size: max(0.8125rem, var(--mono-min)); }
.archive--home-preview .hp-arc-record__status { font-size: max(0.8125rem, var(--mono-min)); }
.archive--home-preview .hp-arc-record--held .hp-arc-record__status { color: rgba(180, 192, 210, max(0.65, var(--text-min-opacity))); }
.archive--home-preview .hp-arc-record--tail .hp-arc-record__status { color: rgba(180, 192, 210, max(0.58, var(--text-min-opacity))); }
.archive--home-preview .hp-arc-record__arrow { font-size: max(0.75rem, var(--mono-min)); color: rgba(var(--ember-rgb), max(0.55, var(--mono-min-opacity))); }
.archive--home-preview .hp-arc-record__type-tag { color: rgba(180, 192, 210, max(0.75, var(--mono-min-opacity))); }
.archive--home-preview .hp-arc-record__tail-label { font-size: max(0.8125rem, var(--mono-min)); }

@media (max-width: 520px) {
  .proof-strip__meta { font-size: max(0.75rem, var(--mono-min)); }
  .hero__capture button { font-size: max(0.8rem, var(--mono-min)); }
}

/* =============================================================
   WORKBENCH — Pass 15 instrument atmosphere + specimen framing
   ============================================================= */
.wb-stage {
  position: relative;
  isolation: isolate;
  min-height: calc(100vh - 4rem);
  overflow: hidden;
}
.wb-stage__content {
  position: relative;
  z-index: 2;
}
.wb-shell {
  position: relative;
  z-index: 1;
  background: transparent;
}

/* Aurora + focal — lab bench: warmer focal (~65% of hero), grid texture */
.wb-stage > .aurora-field {
  opacity: 0.42;
}
.wb-stage > .aurora-field .aurora-field__layer {
  opacity: 0.48;
  filter: blur(58px);
}
.wb-stage > .hero__aurora-focal {
  opacity: 0.32;
  filter: blur(68px);
}
.wb-stage > .wb-stage__dust {
  opacity: 0.55;
}
.wb-stage__grid {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  opacity: 0.55;
  background:
    linear-gradient(rgba(140, 176, 210, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(140, 176, 210, 0.035) 1px, transparent 1px);
  background-size: 28px 28px;
  mask-image: radial-gradient(ellipse 88% 72% at 50% 42%, black 35%, transparent 92%);
}

.wb-antenna {
  display: block;
  width: 32px;
  height: 40px;
  margin: 0 0 0.75rem;
  color: rgba(185, 168, 147, 0.55);
}
.wb-antenna__tip {
  color: rgba(185, 168, 147, 0.45);
  transition: opacity 0.35s ease, fill 0.35s ease;
}
.wb-antenna.is-signal {
  color: rgba(242, 232, 220, 0.82);
}
.wb-antenna.is-signal .wb-antenna__tip {
  color: #B46A5A;
  filter: drop-shadow(0 0 6px rgba(180, 106, 90, 0.42));
}

/* Specimen plate — corner tick + top rule (bridge plate pattern) */
.wb-specimen-plate {
  position: relative;
  border: 1px solid rgba(242, 232, 220, 0.16);
  background: rgba(51, 40, 35, 0.72);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  box-shadow: inset 0 1px 0 rgba(252, 248, 236, 0.04);
}
.wb-specimen-plate::before {
  content: "";
  position: absolute;
  top: 0;
  left: 1rem;
  right: 1rem;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(180, 106, 90, 0.38), transparent);
  opacity: 0.85;
  pointer-events: none;
}
.wb-specimen-plate::after {
  content: "";
  position: absolute;
  top: 0.55rem;
  left: 0.55rem;
  width: 8px;
  height: 8px;
  border-top: 1px solid rgba(180, 106, 90, 0.38);
  border-left: 1px solid rgba(180, 106, 90, 0.38);
  opacity: 0.72;
  pointer-events: none;
}
.wb-specimen-plate__label {
  font-family: var(--font-mono);
  font-size: max(0.625rem, var(--mono-min));
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(185, 168, 147, 0.95);
  line-height: 1.45;
  margin-bottom: 0.65rem;
}

/* Case cards */
.wb-case-card {
  text-align: left;
  flex: 1 1 200px;
  min-width: 190px;
  min-height: 44px;
  cursor: pointer;
  border-radius: 6px;
  padding: 1rem;
  opacity: 1;
  transition: transform 0.35s ease, opacity 0.35s ease;
}
.wb-case-card:not(:disabled):hover {
  transform: translateY(-2px);
  opacity: 0.96;
}
.wb-case-card.is-active {
  border-color: rgba(180, 106, 90, 0.62);
  background: rgba(51, 40, 35, 0.88);
}
.wb-case-card.is-disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
.wb-case-card__title {
  font-family: var(--font-display);
  font-size: 1rem;
  color: #F2E8DC;
  line-height: 1.3;
}

/* Active curated case view */
.wb-active-case {
  border-radius: 6px;
  padding: 1.35rem 1.25rem 1.25rem;
  margin-bottom: 1.75rem;
}
.wb-active-case__headline {
  font-family: var(--font-display);
  font-size: clamp(1.375rem, 4vw, 1.875rem);
  line-height: 1.3;
  color: #F2E8DC;
  margin: 0.65rem 0 0.5rem;
}
.wb-active-case__probe {
  font-family: var(--font-mono);
  font-size: max(0.6875rem, var(--mono-min));
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #B46A5A;
  margin: 0 0 0.85rem;
}
.wb-result-plate {
  border-radius: 6px;
  padding: 1.5rem 1.25rem;
}

/* Instrument stage progress */
.wb-stage-progress {
  margin-bottom: 0.65rem;
}
.wb-stage-progress__track {
  height: 1px;
  background: rgba(71, 58, 51, 0.85);
  overflow: hidden;
}
.wb-stage-progress__fill {
  height: 100%;
  width: 100%;
  background: #B46A5A;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}
.wb-stage-progress__steps {
  display: flex;
  gap: 0.65rem;
  list-style: none;
  margin: 0.45rem 0 0;
  padding: 0;
}
.wb-stage-progress__step {
  font-family: var(--font-mono);
  font-size: max(0.625rem, var(--mono-min));
  letter-spacing: 0.1em;
  color: #9A8775;
  min-width: 1.35rem;
}
.wb-stage-progress__step.is-current {
  color: #B46A5A;
}
.wb-stage-progress__step.is-done {
  color: #C9B8A5;
}
.wb-stage-progress__tick {
  color: #B46A5A;
}
.wb-instrument-header {
  display: flex;
  align-items: baseline;
  gap: 0.2rem;
  font-family: var(--font-mono);
  font-size: max(0.6875rem, var(--mono-min));
  letter-spacing: 0.14em;
  color: rgba(140, 124, 107, 0.95);
  text-transform: uppercase;
  margin-bottom: 0.35rem;
}
.wb-instrument-header__num {
  color: #B46A5A;
}

/* Mode toggle — instrument stages */
.wb-mode-toggle {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  border: 1px solid rgba(71, 58, 51, 0.95);
  border-radius: 6px;
  padding: 0.25rem;
  margin-bottom: 2rem;
  margin-top: 0.5rem;
  background: rgba(36, 29, 26, 0.82);
}
.wb-mode-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  font-family: var(--font-body);
  font-size: 1rem;
  font-weight: 500;
  min-height: 44px;
  padding: 0.625rem 1rem;
  border-radius: 4px;
  border: none;
  cursor: pointer;
  background: transparent;
  color: rgba(185, 168, 147, 0.95);
  transition: opacity 0.35s ease, transform 0.35s ease;
  flex: 1 1 auto;
}
.wb-mode-btn__num {
  font-family: var(--font-mono);
  font-size: max(0.6875rem, var(--mono-min));
  letter-spacing: 0.14em;
  opacity: 0.85;
}
.wb-mode-btn.is-active {
  background: #B46A5A;
  color: #2A211E;
}
.wb-mode-btn.is-active .wb-mode-btn__num {
  color: #2A211E;
  opacity: 0.88;
}
.wb-mode-btn:not(.is-active):hover {
  opacity: 0.88;
  transform: translateY(-1px);
}

@media (prefers-reduced-motion: reduce) {
  .wb-stage > .aurora-field,
  .wb-stage > .hero__aurora-focal {
    opacity: 0.32 !important;
    animation: none !important;
  }
  .wb-stage > .aurora-field .aurora-field__layer {
    animation: none !important;
    transform: none !important;
    opacity: 0.38 !important;
  }
  .wb-stage > .wb-stage__dust,
  .wb-stage .hero__particle {
    display: none !important;
    animation: none !important;
    opacity: 0 !important;
  }
  .wb-case-card,
  .wb-mode-btn,
  .wb-stage-progress__fill {
    transition: none !important;
  }
  .wb-case-card:not(:disabled):hover,
  .wb-mode-btn:not(.is-active):hover {
    transform: none !important;
  }
}

/* =============================================================
   WORKBENCH — Pass 16 verdict reveal (animation classes only)
   ============================================================= */
.wb-token-list {
  font-family: var(--font-mono);
  font-size: max(0.6875rem, var(--mono-min));
  line-height: 1.8;
}
.wb-token-row {
  opacity: 0;
  transform: translateY(5px);
}
.wb-token-row.is-visible {
  animation: wb-token-resolve 0.32s ease forwards;
}
.wb-token-row.is-visible.is-found {
  color: #9BAE7E;
  --wb-token-lift: -1px;
}
.wb-token-row.is-visible.is-missing {
  color: rgba(140, 124, 107, 0.72);
  --wb-token-lift: 0;
}

.wb-verdict-line {
  font-family: var(--font-display);
  font-size: clamp(1.375rem, 4vw, 1.875rem);
  line-height: 1.3;
  color: #F2E8DC;
  margin: 0 0 0.25rem;
  opacity: 0;
  transform: translateY(10px);
}
.wb-verdict-line.is-key-found {
  color: #F2E8DC;
}
.wb-verdict-line.is-landed {
  animation: wb-verdict-land 0.42s ease forwards;
}

.wb-result-inner.is-verdict-pulse {
  animation: none;
}
.wb-run-plate.is-result:has(.wb-result-inner.is-verdict-pulse) {
  animation: wb-specimen-tick-pulse 0.65s ease forwards;
}
.wb-run-plate.is-result:has(.wb-result-inner.is-verdict-pulse)::after {
  animation: wb-corner-tick-pulse 0.65s ease forwards;
}

.wb-reveal-rise {
  opacity: 0;
  transform: translateY(10px);
}
.wb-reveal-rise.is-visible {
  animation: wb-rise-in 0.38s ease forwards;
}

.wb-result-inner.is-reveal-instant .wb-token-row,
.wb-result-inner.is-reveal-instant .wb-token-chip,
.wb-result-inner.is-reveal-instant .wb-verdict-line,
.wb-result-inner.is-reveal-instant .wb-verdict-rule,
.wb-result-inner.is-reveal-instant .wb-reveal-rise,
.wb-result-inner.is-reveal-instant .wb-sweep-line {
  opacity: 1;
  transform: none;
  animation: none;
}
.wb-result-inner.is-reveal-instant.wb-answer-sweep.is-sweeping .wb-sweep-line,
.wb-result-inner.is-reveal-instant .wb-answer-sweep.is-sweeping .wb-sweep-line {
  display: none;
}

@keyframes wb-token-resolve {
  from { opacity: 0; transform: translateY(5px); }
  to   { opacity: 1; transform: translateY(var(--wb-token-lift, 0)); }
}

@keyframes wb-verdict-land {
  from { opacity: 0; transform: translateY(10px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes wb-rise-in {
  from { opacity: 0; transform: translateY(10px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes wb-specimen-tick-pulse {
  0%   { border-color: rgba(242, 232, 220, 0.16); }
  45%  { border-color: rgba(180, 106, 90, 0.58); }
  100% { border-color: rgba(242, 232, 220, 0.16); }
}

@keyframes wb-corner-tick-pulse {
  0%   { opacity: 0.72; border-color: rgba(180, 106, 90, 0.38); }
  45%  { opacity: 1; border-color: rgba(180, 106, 90, 0.78); }
  100% { opacity: 0.72; border-color: rgba(180, 106, 90, 0.38); }
}

@media (prefers-reduced-motion: reduce) {
  .wb-token-row,
  .wb-token-chip,
  .wb-verdict-line,
  .wb-verdict-rule,
  .wb-reveal-rise,
  .wb-sweep-line {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }
  .wb-answer-sweep.is-sweeping .wb-sweep-line {
    display: none !important;
  }
  .wb-antenna.is-signal .wb-antenna__tip {
    transition: none !important;
  }
  .wb-result-inner.is-verdict-pulse,
  .wb-run-plate.is-result:has(.wb-result-inner.is-verdict-pulse),
  .wb-run-plate.is-result:has(.wb-result-inner.is-verdict-pulse)::after {
    animation: none !important;
  }
}

/* =============================================================
   WORKBENCH — Pass 17 sweep, chips, verdict rule (animation only)
   ============================================================= */
.wb-answer-sweep {
  position: relative;
  overflow: hidden;
}
.wb-sweep-line {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 2px;
  background: #B46A5A;
  opacity: 0;
  transform: translateY(0);
  pointer-events: none;
  box-shadow: 0 0 10px rgba(180, 106, 90, 0.38);
}
.wb-answer-sweep.is-sweeping .wb-sweep-line {
  opacity: 0.88;
  animation: wb-sweep-down 700ms linear forwards;
}

.wb-token-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}
.wb-token-chip {
  display: inline-flex;
  align-items: center;
  font-family: var(--font-mono);
  font-size: max(0.625rem, var(--mono-min));
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 999px;
  padding: 0.35rem 0.7rem;
  border: 1px solid rgba(71, 58, 51, 0.85);
  color: rgba(140, 124, 107, 0.85);
  opacity: 0;
  transform: translateY(4px);
}
.wb-token-chip.is-visible {
  animation: wb-chip-resolve 0.28s ease forwards;
}
.wb-token-chip.is-visible.is-found {
  border-color: rgba(180, 106, 90, 0.78);
  color: #EDE3D8;
}
.wb-token-chip.is-visible.is-missing {
  border-color: rgba(100, 86, 76, 0.85);
  color: #B9A893;
}

.wb-verdict-rule {
  height: 1px;
  width: 100%;
  max-width: 12rem;
  background: #B46A5A;
  margin: 0.35rem 0 0.85rem;
  opacity: 0;
  transform: scaleX(0);
  transform-origin: left center;
}
.wb-verdict-rule.is-visible {
  animation: wb-verdict-rule-in 0.35s ease forwards;
}

@keyframes wb-sweep-down {
  from { transform: translateY(0); opacity: 0.88; }
  to   { transform: translateY(var(--sweep-travel, 180px)); opacity: 0.25; }
}

@keyframes wb-chip-resolve {
  from { opacity: 0; transform: translateY(4px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes wb-verdict-rule-in {
  from { opacity: 0; transform: scaleX(0); }
  to   { opacity: 1; transform: scaleX(1); }
}

/* =============================================================
   WORKBENCH — Pass 18 in-plate state, contrast, journey ack
   ============================================================= */
.wb-run-plate {
  border-radius: 6px;
  padding: 1.35rem 1.25rem 1.25rem;
  margin-bottom: 1.75rem;
  transition: opacity 0.2s ease;
}
.wb-run-plate.is-crossfade-out {
  opacity: 0;
}
.wb-run-plate.is-crossfade-in {
  opacity: 1;
}
.wb-run-plate.is-result {
  margin-bottom: 0;
}

.wb-field-label {
  font-family: var(--font-mono);
  font-size: max(0.6875rem, var(--mono-min));
  letter-spacing: 0.14em;
  color: #C9B8A5;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}
.wb-run-plate .wb-field-label {
  color: #D4C4B0;
}
.wb-plate-support {
  font-family: var(--font-sans);
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #D4C4B0;
  margin: 0.85rem 0 0;
}
.wb-plate-caption {
  font-family: var(--font-mono);
  font-size: max(0.6875rem, var(--mono-min));
  letter-spacing: 0.04em;
  line-height: 1.6;
  color: #B9A893;
  margin: 0 0 1.1rem;
}
.wb-plate-note {
  font-family: var(--font-sans);
  font-size: 0.8125rem;
  line-height: 1.55;
  color: #B9A893;
  margin: 0.85rem 0;
  border-left: 2px solid rgba(71, 58, 51, 0.9);
  padding-left: 0.875rem;
}
.wb-plate-note--dashed {
  border: 1px dashed rgba(71, 58, 51, 0.85);
  border-left: 1px dashed rgba(71, 58, 51, 0.85);
  border-radius: 6px;
  padding: 1.375rem;
  font-size: 0.9375rem;
}
.wb-plate-hint {
  font-family: var(--font-sans);
  font-size: 0.8125rem;
  line-height: 1.5;
  color: #B9A893;
  margin: 0.65rem 0 0;
}
.wb-field-error {
  font-family: var(--font-sans);
  font-size: 0.875rem;
  color: #B46A5A;
  line-height: 1.5;
  margin-bottom: 0.75rem;
}
.wb-active-case__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
  font-family: var(--font-mono);
  font-size: max(0.75rem, var(--mono-min));
  color: #C9B8A5;
  letter-spacing: 0.04em;
}
.wb-result-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
  flex-wrap: wrap;
  margin-bottom: 1rem;
}
.wb-confirm-block,
.wb-gate-block {
  margin-top: 0.25rem;
}

.wb-input.is-paste-received {
  animation: wb-paste-tick 0.55s ease forwards;
}
.wb-paste-ack {
  font-family: var(--font-mono);
  font-size: max(0.6875rem, var(--mono-min));
  letter-spacing: 0.08em;
  color: #B46A5A;
  margin-top: 0.45rem;
}
@keyframes wb-paste-tick {
  0%   { border-color: rgba(71, 58, 51, 0.85); }
  40%  { border-color: rgba(180, 106, 90, 0.88); }
  100% { border-color: rgba(71, 58, 51, 0.85); }
}

.wb-btn.is-copied {
  color: #B46A5A !important;
  border-color: rgba(180, 106, 90, 0.72) !important;
  animation: wb-copy-flash 2s ease forwards;
}
@keyframes wb-copy-flash {
  0%, 18% { background: rgba(180, 106, 90, 0.14); }
  100%    { background: transparent; }
}

.wb-answer-row {
  margin-bottom: 1.1rem;
}
.wb-answer-sweep-measure {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: pre-wrap;
}
.wb-answer-row__bar {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(71, 58, 51, 0.9);
  border-radius: 4px;
  background: rgba(36, 29, 26, 0.65);
}
.wb-answer-row__toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-height: 44px;
  padding: 0.65rem 0.875rem;
  border: none;
  background: transparent;
  cursor: pointer;
  text-align: left;
}
.wb-answer-row__label {
  font-family: var(--font-mono);
  font-size: max(0.6875rem, var(--mono-min));
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #D4C4B0;
}
.wb-answer-row__chevron {
  display: inline-block;
  width: 0.45rem;
  height: 0.45rem;
  border-right: 1.5px solid #B9A893;
  border-bottom: 1.5px solid #B9A893;
  transform: rotate(45deg);
  transition: transform 0.2s ease;
  margin-left: 0.75rem;
  flex-shrink: 0;
}
.wb-answer-row__chevron.is-open {
  transform: rotate(-135deg);
}
.wb-answer-row__body {
  display: none;
  padding: 0.875rem;
  border-top: 1px solid rgba(71, 58, 51, 0.75);
  background: rgba(36, 29, 26, 0.55);
}
.wb-answer-row__body.is-open,
.wb-answer-row.is-expanded .wb-answer-row__body {
  display: block;
}
.wb-answer-row__text {
  font-family: var(--font-serif);
  font-size: 0.9375rem;
  line-height: 1.55;
  color: #F2E8DC;
  white-space: pre-wrap;
}
.wb-answer-row__bar.wb-answer-sweep.is-sweeping .wb-sweep-line {
  opacity: 0.88;
  animation: wb-sweep-down 700ms linear forwards;
}

.wb-token-chips {
  list-style: none;
  margin: 0.5rem 0 0.65rem;
  padding: 0;
}

.wb-verdict-line.is-landed {
  color: #F2E8DC;
  opacity: 1;
}

.wb-another-case {
  font-family: var(--font-sans);
  font-size: 0.875rem;
  font-weight: 500;
  color: #B46A5A;
  background: transparent;
  border: none;
  padding: 0.65rem 0;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.wb-result-actions {
  margin-top: 1.25rem;
  padding-top: 0.25rem;
}

.wb-review-value {
  white-space: pre-wrap;
}

@media (prefers-reduced-motion: reduce) {
  .wb-run-plate.is-crossfade-out,
  .wb-run-plate.is-crossfade-in {
    transition: none !important;
    opacity: 1 !important;
  }
  .wb-btn.is-copied {
    animation: none !important;
  }
  .wb-input.is-paste-received {
    animation: none !important;
    border-color: rgba(180, 106, 90, 0.72) !important;
  }
  .wb-stage-progress__fill {
    transition: none !important;
  }
}
