:root {
  --bg: #f4f1ea;
  --paper: #fbfaf6;
  --ink: #111111;
  --muted: #66635d;
  --line: #cfcbc1;
  --strong-line: #111111;
  --accent: #9b2020;
  --accent-soft: #efe2df;
  --max: 1180px;
  --serif: Georgia, 'Times New Roman', serif;
  --sans: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
  --mono: 'SFMono-Regular', Consolas, 'Liberation Mono', monospace;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--ink);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration-color: rgba(17,17,17,.45); text-underline-offset: 3px; }
a:hover { text-decoration-color: var(--accent); }
img, svg { max-width: 100%; }
button, input, select { font: inherit; }
button { color: inherit; }

.skip-link {
  position: absolute; left: -9999px; top: 10px; z-index: 999;
  background: var(--ink); color: white; padding: .6rem .8rem;
}
.skip-link:focus { left: 10px; }

.site-header {
  position: sticky; top: 0; z-index: 40;
  background: rgba(244,241,234,.96);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--line);
}
.header-inner {
  width: min(var(--max), calc(100% - 32px));
  margin: 0 auto;
  min-height: 66px;
  display: flex; align-items: center; justify-content: space-between; gap: 1rem;
}
.brand {
  display: inline-block;
  width: 180px;
  height: 60px;
  flex: 0 0 auto;
  background: url('/assets/brand/morale-zero-lockup-primary-on-light.svg?v=20261006-4') left center / contain no-repeat;
  font-size: 0;
  line-height: 0;
  text-decoration: none;
}
.brand > * { display: none; }
.footer .brand {
  width: 228px;
  height: 76px;
  margin-bottom: .35rem;
}
.nav { display: flex; align-items: center; gap: 1.25rem; font-size: .86rem; font-weight: 700; }
.nav a { text-decoration: none; }
.nav a[aria-current="page"] { color: var(--accent); }
.nav .status-dot { display:inline-block; width:7px; height:7px; border-radius:50%; background: var(--accent); margin-right:.35rem; }
.nav-toggle { display:none; background:none; border:1px solid var(--line); padding:.45rem .6rem; }

main { min-height: 70vh; }
.container { width: min(var(--max), calc(100% - 32px)); margin: 0 auto; }
.narrow { width: min(780px, calc(100% - 32px)); margin: 0 auto; }

.eyebrow {
  font-family: var(--mono); font-size: .72rem; font-weight: 800; letter-spacing: .12em;
  text-transform: uppercase; color: var(--muted);
}
.eyebrow.accent { color: var(--accent); }

.hero {
  padding: clamp(2.5rem, 5vw, 4.75rem) 0 clamp(3rem, 6vw, 5.5rem);
  border-bottom: 1px solid var(--line);
  overflow: hidden;
}
.hero-v2 .container { position: relative; }
.hero-mast {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:1rem;
  padding-bottom:1rem;
  border-bottom:1px solid var(--ink);
}
.hero-code {
  flex:0 0 auto;
  font-family:var(--mono);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.12em;
  color:var(--muted);
}
.hero-statement {
  padding: clamp(2.3rem, 5vw, 5rem) 0 clamp(2.6rem, 5vw, 4.5rem);
  max-width: 1120px;
}
.hero h1 {
  margin:0;
  max-width:1120px;
  font-family:var(--serif);
  font-weight:400;
  letter-spacing:-.052em;
  font-size:clamp(3.8rem, 8.5vw, 8.4rem);
  line-height:.89;
}
.hero h1 em {
  font-style:normal;
  color:var(--accent);
}
.hero h1 .hero-subhead {
  display:block;
  margin-top:.28em;
  font-size:.43em;
  line-height:1;
  letter-spacing:-.035em;
}
.hero-kicker {
  margin:1.8rem 0 0;
  max-width:730px;
  font-size:clamp(1.15rem, 1.8vw, 1.5rem);
  line-height:1.42;
  color:#2a2926;
}
.hero-actions {
  display:flex;
  align-items:center;
  gap:1.2rem;
  flex-wrap:wrap;
  margin-top:1.8rem;
}
.hero-specimen {
  border:1px solid var(--ink);
  background:var(--paper);
}
.specimen-meta {
  display:flex;
  justify-content:space-between;
  gap:1rem;
  padding:.72rem 1rem;
  background:var(--ink);
  color:#f7f4ed;
  font-family:var(--mono);
  font-size:.67rem;
  font-weight:800;
  letter-spacing:.11em;
}
.specimen-grid {
  display:grid;
  grid-template-columns:1.15fr 1fr 1fr;
}
.specimen-grid > div {
  min-height:155px;
  padding:1.2rem 1.25rem 1.4rem;
  border-right:1px solid var(--line);
}
.specimen-grid > div:last-child { border-right:0; }
.specimen-label {
  margin-bottom:.75rem;
  font-family:var(--mono);
  font-size:.65rem;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--muted);
}
.specimen-grid p {
  margin:0;
  font-family:var(--serif);
  font-size:clamp(1.2rem, 2vw, 1.7rem);
  line-height:1.12;
}
.specimen-grid .specimen-command {
  font-size:clamp(1.55rem, 2.8vw, 2.6rem);
  letter-spacing:-.03em;
}
.specimen-grid .specimen-outcome {
  font-family:var(--mono);
  font-size:.9rem;
  line-height:1.65;
}
.specimen-foot {
  padding:.72rem 1rem;
  border-top:1px solid var(--line);
  font-size:.76rem;
  color:var(--muted);
}

.section { padding: clamp(3.5rem, 7vw, 7rem) 0; border-bottom:1px solid var(--line); }
.section-head { display:flex; justify-content:space-between; gap:2rem; align-items:end; margin-bottom:2rem; }
.section-head h2 { margin:.3rem 0 0; font-family:var(--serif); font-weight:400; font-size:clamp(2.5rem,5vw,5rem); letter-spacing:-.04em; line-height:.95; }
.section-head p { max-width:520px; color:var(--muted); margin:0; }

.today-card {
  background: var(--ink); color: #f7f4ed;
  display:grid; grid-template-columns: .32fr 1fr; min-height: 460px;
  box-shadow: 0 12px 0 rgba(17,17,17,.08);
}
.today-meta { padding:2rem; border-right:1px solid rgba(255,255,255,.2); display:flex; flex-direction:column; justify-content:space-between; }
.today-meta .root-label { font-family:var(--mono); font-size:.72rem; letter-spacing:.12em; color:#c7c2b8; }
.today-meta .directive-id { font-family:var(--mono); font-size:.82rem; color:#c7c2b8; }
.today-body { padding:clamp(2rem,5vw,5rem); display:flex; flex-direction:column; justify-content:center; }
.today-body h3 { margin:0 0 2rem; font-size:clamp(2.35rem,6vw,5.6rem); line-height:.95; letter-spacing:-.045em; text-transform:uppercase; }
.today-body p { max-width:700px; font-family:var(--serif); font-size:clamp(1.2rem,2.2vw,1.75rem); margin:.25rem 0; }
.today-actions { margin-top:2.3rem; display:flex; gap:1rem; align-items:center; flex-wrap:wrap; }
.text-link { font-size:.82rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }

.btn {
  display:inline-flex; align-items:center; justify-content:center; gap:.45rem;
  border:1px solid var(--ink); background:var(--ink); color:#fff; text-decoration:none;
  padding:.78rem 1rem; font-weight:800; font-size:.8rem; letter-spacing:.06em; text-transform:uppercase;
  cursor:pointer;
}
.btn:hover { background:var(--accent); border-color:var(--accent); }
.btn.inverse { background:#f7f4ed; color:var(--ink); border-color:#f7f4ed; }
.btn.inverse:hover { background:var(--accent); color:#fff; border-color:var(--accent); }
.btn.ghost { background:transparent; color:var(--ink); }
.btn.ghost:hover { color:#fff; background:var(--ink); }

.grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.grid-4 { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; }
.grid-2 { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; }

.card {
  background:var(--paper); border:1px solid var(--line); padding:1.35rem; min-height:220px;
  display:flex; flex-direction:column; justify-content:space-between;
}
a.card { text-decoration:none; }
a.card:hover { border-color:var(--ink); transform:translateY(-1px); }
.card h3 { margin:.5rem 0 1rem; font-size:1.2rem; line-height:1.1; letter-spacing:-.02em; }
.card p { margin:.2rem 0; color:#33312d; }
.card .meta-row { display:flex; align-items:center; justify-content:space-between; gap:1rem; color:var(--muted); font-size:.72rem; font-family:var(--mono); text-transform:uppercase; }
.card .mini-body { font-family:var(--serif); font-size:1.05rem; }

.root-card { min-height: 285px; position:relative; overflow:hidden; }
.root-card::after { content: attr(data-index); position:absolute; right:.6rem; bottom:-1rem; font-family:var(--serif); font-size:6rem; color:rgba(17,17,17,.04); }
.root-card h3 { font-family:var(--serif); font-size:2rem; font-weight:400; margin:.4rem 0 1.2rem; }
.root-card .question { font-weight:800; font-size:.95rem; }
.root-card .objective { margin-top:auto; color:var(--accent); font-weight:800; }

.pattern-card h3 { font-size:1rem; text-transform:uppercase; letter-spacing:.04em; }
.pattern-card .pattern-line { font-family:var(--serif); font-size:1.25rem; }

.machine-band { background:var(--ink); color:white; }
.machine-band .section-head p, .machine-band .eyebrow { color:#c8c4bb; }
.machine-band .section-head h2 { color:white; }
.counters { display:grid; grid-template-columns:repeat(6,1fr); border-top:1px solid rgba(255,255,255,.2); border-left:1px solid rgba(255,255,255,.2); }
.counter { padding:1.3rem; border-right:1px solid rgba(255,255,255,.2); border-bottom:1px solid rgba(255,255,255,.2); min-height:130px; }
.counter strong { display:block; font-family:var(--serif); font-size:3.2rem; font-weight:400; letter-spacing:-.06em; }
.counter span { display:block; color:#bcb7ad; font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; }

.role-strip { display:flex; align-items:center; gap:.75rem; flex-wrap:wrap; margin-bottom:1.3rem; }
.role-pill { border:1px solid var(--line); background:var(--paper); padding:.45rem .65rem; font-size:.75rem; font-family:var(--mono); cursor:pointer; }
.role-pill:hover { border-color:var(--ink); }

/* Gate */
.gate {
  position:fixed; inset:0; z-index:100; background:var(--ink); color:#f8f4eb;
  display:none; overflow:auto;
}
.gate.open { display:block; }
.gate-inner { width:min(980px, calc(100% - 32px)); margin:0 auto; padding:clamp(3rem,8vw,7rem) 0; }
.gate h2 { font-family:var(--serif); font-weight:400; font-size:clamp(3rem,8vw,7rem); line-height:.93; letter-spacing:-.05em; max-width:900px; margin:.4rem 0 3rem; }
.role-options { border-top:1px solid rgba(255,255,255,.25); }
.role-option {
  width:100%; text-align:left; background:transparent; color:white; border:0; border-bottom:1px solid rgba(255,255,255,.25);
  padding:1.15rem .2rem; display:grid; grid-template-columns:.4fr 1fr; gap:2rem; cursor:pointer;
}
.role-option:hover, .role-option:focus { background:rgba(255,255,255,.05); outline:none; }
.role-option strong { font-size:1rem; }
.role-option span { color:#c8c4bb; }

/* Detail pages */
.page-hero { padding: clamp(3rem,7vw,7rem) 0 3rem; border-bottom:1px solid var(--line); }
.page-hero h1 { font-family:var(--serif); font-size:clamp(3rem,8vw,7.5rem); font-weight:400; line-height:.9; letter-spacing:-.05em; margin:.6rem 0 1.4rem; }
.page-hero .lede { max-width:760px; font-size:1.18rem; color:#34322f; }

.directive-hero { background:var(--ink); color:#f8f4eb; padding:clamp(4rem,8vw,8rem) 0; }
.directive-hero h1 { max-width:1000px; font-size:clamp(3rem,8vw,7.5rem); line-height:.92; letter-spacing:-.05em; margin:.6rem 0 2rem; text-transform:uppercase; }
.directive-copy { max-width:760px; }
.directive-copy p { font-family:var(--serif); font-size:clamp(1.3rem,2.4vw,2rem); margin:.4rem 0; }
.directive-meta { display:flex; gap:.5rem; flex-wrap:wrap; margin-top:2rem; }
.tag { display:inline-flex; border:1px solid currentColor; padding:.32rem .52rem; font-size:.68rem; font-family:var(--mono); letter-spacing:.06em; text-transform:uppercase; }
.tag.primary { background:#f8f4eb; color:var(--ink); }

.research-panel { display:grid; grid-template-columns:.35fr 1fr; gap:2rem; align-items:start; }
.research-panel h2 { font-family:var(--serif); font-size:clamp(2.3rem,5vw,4.7rem); font-weight:400; letter-spacing:-.04em; line-height:.95; margin:.2rem 0; }
.research-box { background:var(--paper); border-left:4px solid var(--accent); padding:1.4rem 1.5rem; }
.research-box h3 { margin:0 0 .6rem; font-size:.9rem; text-transform:uppercase; letter-spacing:.06em; }
.research-box p { margin:.45rem 0; }
.research-box .disclaimer { margin-top:1.3rem; font-size:.78rem; color:var(--muted); }

.filter-bar { display:flex; gap:.5rem; flex-wrap:wrap; margin:1rem 0 2rem; }
.filter-button { border:1px solid var(--line); background:var(--paper); padding:.45rem .65rem; cursor:pointer; font-size:.75rem; font-weight:800; letter-spacing:.04em; }
.filter-button.active, .filter-button:hover { background:var(--ink); color:white; border-color:var(--ink); }

.directive-list { border-top:1px solid var(--line); }
.directive-row { display:grid; grid-template-columns:110px .35fr 1fr; gap:1.4rem; padding:1.25rem 0; border-bottom:1px solid var(--line); align-items:start; }
.directive-row .id { font-family:var(--mono); color:var(--muted); font-size:.76rem; }
.directive-row h3 { margin:0; font-size:1rem; text-transform:uppercase; letter-spacing:.02em; }
.directive-row p { margin:0; font-family:var(--serif); color:#383632; }
.directive-row a { text-decoration:none; }
.directive-row a:hover h3 { color:var(--accent); }

.claim { padding:1.15rem 0; border-bottom:1px solid var(--line); display:grid; grid-template-columns:120px 1fr 160px; gap:1rem; }
.claim-id { font-family:var(--mono); font-size:.75rem; }
.claim p { margin:0; }
.claim .anchor { color:var(--muted); font-size:.82rem; }
.badge { display:inline-flex; width:max-content; padding:.25rem .45rem; border:1px solid var(--line); font-family:var(--mono); font-size:.65rem; }

.pipeline { counter-reset:pipe; border-top:1px solid var(--line); }
.pipe { display:grid; grid-template-columns:80px .45fr 1fr; gap:1rem; padding:1rem 0; border-bottom:1px solid var(--line); }
.pipe-num { font-family:var(--mono); font-size:.75rem; color:var(--muted); }
.pipe h3 { margin:0; font-size:.9rem; letter-spacing:.06em; }
.pipe p { margin:0; color:#45423e; }

.callout { padding:1.3rem; border:1px solid var(--strong-line); background:var(--paper); }
.callout strong { font-family:var(--serif); font-size:1.35rem; font-weight:400; }
.callout p:last-child { margin-bottom:0; }

.footer { padding:2.5rem 0 4rem; }
.footer-grid { display:grid; grid-template-columns:1fr 1fr; gap:2rem; align-items:start; }
.footer p { color:var(--muted); font-size:.82rem; margin:.25rem 0; }
.footer-links { display:flex; justify-content:flex-end; gap:1rem; flex-wrap:wrap; font-size:.78rem; }

.status-panel { padding:1.3rem; border:1px solid var(--line); background:var(--paper); }
.status-line { display:flex; justify-content:space-between; gap:1rem; border-bottom:1px solid var(--line); padding:.6rem 0; font-size:.85rem; }
.status-line:last-child { border-bottom:0; }
.status-line span:last-child { font-family:var(--mono); }
.status-warn { color:var(--accent); font-weight:800; }

.kicker-line { font-family:var(--mono); text-transform:uppercase; letter-spacing:.08em; font-size:.72rem; color:var(--muted); }
.empty-state { padding:3rem 0; max-width:640px; }
.empty-state h2 { font-family:var(--serif); font-size:2.5rem; font-weight:400; margin:.4rem 0 1rem; }

@media (max-width: 900px) {
  .research-panel { grid-template-columns:1fr; }
  .specimen-grid { grid-template-columns:1fr; }
  .specimen-grid > div { min-height:0; border-right:0; border-bottom:1px solid var(--line); }
  .specimen-grid > div:last-child { border-bottom:0; }
  .grid-4 { grid-template-columns:repeat(2,1fr); }
  .grid-3 { grid-template-columns:repeat(2,1fr); }
  .counters { grid-template-columns:repeat(3,1fr); }
  .today-card { grid-template-columns:1fr; }
  .today-meta { border-right:0; border-bottom:1px solid rgba(255,255,255,.2); min-height:130px; }
  .directive-row { grid-template-columns:90px 1fr; }
  .directive-row p { grid-column:2; }
  .claim { grid-template-columns:100px 1fr; }
  .claim > :last-child { grid-column:2; }
}

@media (max-width: 680px) {
  .nav-toggle { display:block; }
  .nav { display:none; position:absolute; left:0; right:0; top:66px; background:var(--bg); border-bottom:1px solid var(--line); padding:1rem 16px 1.3rem; flex-direction:column; align-items:flex-start; }
  .nav.open { display:flex; }
  .site-header .brand { width: 150px; height: 50px; }
  .hero { padding-top:2rem; }
  .hero-mast { align-items:flex-start; }
  .hero-mast .eyebrow { max-width:230px; }
  .hero h1 { font-size:clamp(3.1rem,14.5vw,5.7rem); line-height:.91; }
  .hero-kicker { margin-top:1.35rem; }
  .hero-actions { align-items:flex-start; flex-direction:column; gap:.85rem; }
  .hero-actions .btn { width:100%; }
  .specimen-grid .specimen-command { font-size:1.8rem; }
  .grid-4, .grid-3, .grid-2 { grid-template-columns:1fr; }
  .counters { grid-template-columns:repeat(2,1fr); }
  .today-meta { padding:1.2rem; }
  .today-body { padding:1.5rem; }
  .section-head { align-items:flex-start; flex-direction:column; gap:.8rem; }
  .role-option { grid-template-columns:1fr; gap:.25rem; }
  .directive-row { grid-template-columns:1fr; gap:.4rem; }
  .directive-row p { grid-column:1; }
  .claim { grid-template-columns:1fr; }
  .claim > :last-child { grid-column:1; }
  .pipe { grid-template-columns:55px 1fr; }
  .pipe p { grid-column:2; }
  .footer-grid { grid-template-columns:1fr; }
  .footer-links { justify-content:flex-start; }
}

@media (prefers-reduced-motion: no-preference) {
  .card, .btn, .nav a { transition: .15s ease; }
}


/* ALSAID NETWORK STANDARD */
.portfolio-rights {
    margin: 0;
    padding: .9rem 1.5rem;
    border-top: 1px solid rgba(255,255,255,.08);
    color: rgba(244,243,239,.38);
    font-size: .72rem;
    line-height: 1.5;
    text-align: center;
}
.alsaid-network {
    margin: 0;
    padding: 1rem 1.5rem 1.15rem;
    border-top: 1px solid rgba(255,255,255,.10);
    background: #06111b;
    color: rgba(244,243,239,.46);
    font-size: .72rem;
    line-height: 1.5;
    letter-spacing: .03em;
    text-align: center;
}
.alsaid-network a { color: rgba(244,243,239,.72); text-decoration: none; transition: color .2s ease; }
.alsaid-network a:hover,
.alsaid-network a:focus-visible { color: #f4f3ef; }

/* FRAMEWORK ELEVATION 2026-10-06 */
.framework-page main { overflow: clip; }

.framework-hero {
  background: var(--ink);
  color: #f7f4ed;
  padding: clamp(4rem, 8vw, 8rem) 0 0;
  border-bottom: 0;
}
.framework-hero .eyebrow { color: #aaa59b; }
.framework-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .76fr);
  gap: clamp(2.5rem, 6vw, 6.5rem);
  align-items: end;
}
.framework-hero h1 {
  margin: .45rem 0 0;
  max-width: 760px;
  font-family: var(--serif);
  font-size: clamp(4.5rem, 9vw, 8.8rem);
  font-weight: 400;
  line-height: .84;
  letter-spacing: -.06em;
}
.framework-hero .lede {
  margin: 0;
  max-width: 640px;
  color: #d0cbc1;
  font-size: clamp(1.05rem, 1.5vw, 1.3rem);
  line-height: 1.55;
}
.framework-summary {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: clamp(2rem, 4vw, 3.5rem);
  border-top: 1px solid rgba(255,255,255,.22);
  border-bottom: 1px solid rgba(255,255,255,.22);
}
.framework-summary span {
  min-height: 104px;
  padding: 1rem 1rem 1.1rem 0;
  border-right: 1px solid rgba(255,255,255,.18);
  color: #aaa59b;
  font-family: var(--mono);
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .08em;
  line-height: 1.4;
  text-transform: uppercase;
}
.framework-summary span + span { padding-left: 1rem; }
.framework-summary span:last-child { border-right: 0; }
.framework-summary strong {
  display: block;
  margin-bottom: .15rem;
  color: #f7f4ed;
  font-family: var(--serif);
  font-size: 2.45rem;
  font-weight: 400;
  letter-spacing: -.05em;
  line-height: 1;
}
.framework-index {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  margin-top: clamp(3.5rem, 7vw, 6.5rem);
  border-top: 1px solid rgba(255,255,255,.24);
}
.framework-index a {
  min-width: 0;
  padding: 1rem .75rem 1.15rem;
  border-right: 1px solid rgba(255,255,255,.18);
  color: #d0cbc1;
  text-decoration: none;
  transition: background .15s ease, color .15s ease;
}
.framework-index a:first-child { padding-left: 0; }
.framework-index a:last-child { border-right: 0; }
.framework-index a span {
  display: block;
  margin-bottom: .28rem;
  color: #817c73;
  font-family: var(--mono);
  font-size: .62rem;
  letter-spacing: .08em;
}
.framework-index a strong {
  display: block;
  overflow: hidden;
  font-size: .74rem;
  letter-spacing: .05em;
  text-overflow: ellipsis;
  text-transform: uppercase;
}
.framework-index a:hover,
.framework-index a:focus-visible {
  background: rgba(255,255,255,.06);
  color: #fff;
  outline: none;
}

.framework-variable {
  position: relative;
  padding: clamp(4.5rem, 9vw, 8.5rem) 0;
  overflow: hidden;
  scroll-margin-top: 72px;
}
.framework-variable::before {
  position: absolute;
  top: clamp(4rem, 7vw, 6.5rem);
  right: max(16px, calc((100vw - var(--max)) / 2));
  color: rgba(17,17,17,.035);
  font-family: var(--serif);
  font-size: clamp(8rem, 19vw, 18rem);
  line-height: .7;
  letter-spacing: -.08em;
  pointer-events: none;
}
#worth::before { content: "01"; }
#power::before { content: "02"; }
#feedback::before { content: "03"; }
#belonging::before { content: "04"; }
#growth::before { content: "05"; }
#control::before { content: "06"; }
#fairness::before { content: "07"; }
#meaning::before { content: "08"; }

.framework-variable .section-head {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, .62fr);
  gap: clamp(2rem, 6vw, 6rem);
  align-items: start;
  margin-bottom: clamp(2.5rem, 5vw, 4.5rem);
  padding-top: 1.15rem;
  border-top: 3px solid var(--ink);
}
.framework-variable .section-head h2 {
  max-width: 800px;
  margin: .45rem 0 0;
  font-size: clamp(3rem, 6.2vw, 6.15rem);
  line-height: .9;
}
.framework-variable .section-head > p {
  max-width: 540px;
  padding: .1rem 0 .1rem 1.4rem;
  border-left: 3px solid var(--accent);
  color: #4b4842;
  line-height: 1.58;
}
.framework-variable .section-head > p strong {
  display: block;
  margin-bottom: .4rem;
  color: var(--accent);
  font-family: var(--serif);
  font-size: clamp(1.35rem, 2vw, 1.8rem);
  font-weight: 400;
  line-height: 1.08;
}
.framework-variable > .container > .grid-2 {
  position: relative;
  z-index: 1;
  gap: 0;
  border: 1px solid var(--line);
}
.framework-variable .callout {
  min-height: 225px;
  padding: clamp(1.4rem, 2.5vw, 2.15rem);
  border: 0;
  background: transparent;
}
.framework-variable .callout:first-child {
  border-right: 1px solid var(--line);
  background: var(--paper);
}
.framework-variable .callout:last-child {
  background: rgba(155,32,32,.035);
}
.framework-variable .callout .eyebrow { margin-bottom: .7rem; }
.framework-variable .callout strong {
  display: block;
  max-width: 540px;
  font-size: clamp(1.45rem, 2.2vw, 2rem);
  line-height: 1.08;
}
.framework-variable .callout p {
  max-width: 580px;
  color: #4b4842;
  line-height: 1.62;
}

.framework-claims {
  position: relative;
  z-index: 1;
  margin-top: 1.5rem;
  border: 1px solid var(--line);
  background: var(--paper);
}
.framework-claims-label {
  padding: .9rem 1.2rem;
  border-bottom: 1px solid var(--line);
  background: #ece8df;
}
.framework-claims .claim {
  grid-template-columns: 145px minmax(0, 1fr) 190px;
  gap: 1.5rem;
  padding: 1.35rem 1.2rem;
  transition: background .15s ease;
}
.framework-claims .claim:last-child { border-bottom: 0; }
.framework-claims .claim:hover { background: #f7f4ed; }
.framework-claims .claim-id {
  font-weight: 800;
  letter-spacing: .02em;
}
.framework-claims .badge {
  margin-top: .45rem;
  border-color: #aaa59b;
  background: transparent;
  color: #5b5750;
}
.framework-claims .claim p {
  max-width: 760px;
  font-family: var(--serif);
  font-size: 1.03rem;
  line-height: 1.55;
}
.framework-claims .anchor {
  padding-top: .05rem;
  font-family: var(--mono);
  font-size: .67rem;
  letter-spacing: .06em;
  line-height: 1.45;
  text-transform: uppercase;
}

.framework-interdependencies {
  background: var(--ink);
  color: #f7f4ed;
  border-bottom: 0;
}
.framework-interdependencies .eyebrow,
.framework-interdependencies .section-head p { color: #aaa59b; }
.framework-interdependencies .section-head {
  align-items: end;
  margin-bottom: clamp(2rem, 4vw, 3.5rem);
  padding-top: 1rem;
  border-top: 1px solid rgba(255,255,255,.24);
}
.framework-interdependencies .section-head h2 { color: #f7f4ed; }
.framework-interdependencies .directive-meta {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 0;
  margin-top: 0;
  border-top: 1px solid rgba(255,255,255,.2);
  border-left: 1px solid rgba(255,255,255,.2);
}
.framework-interdependencies .tag {
  min-height: 72px;
  align-items: center;
  padding: .8rem 1rem;
  border: 0;
  border-right: 1px solid rgba(255,255,255,.2);
  border-bottom: 1px solid rgba(255,255,255,.2);
  color: #d7d2c8;
  line-height: 1.35;
}

@media (max-width: 900px) {
  .framework-hero-grid { grid-template-columns: 1fr; }
  .framework-hero .lede { max-width: 720px; }
  .framework-index { grid-template-columns: repeat(4, 1fr); }
  .framework-index a:nth-child(4) { border-right: 0; }
  .framework-index a:nth-child(-n+4) { border-bottom: 1px solid rgba(255,255,255,.18); }
  .framework-index a:nth-child(5) { padding-left: 0; }

  .framework-variable .section-head {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  .framework-variable .section-head > p { max-width: 680px; }
  .framework-claims .claim { grid-template-columns: 125px minmax(0, 1fr); }
  .framework-claims .anchor { grid-column: 2; }
  .framework-interdependencies .directive-meta { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 680px) {
  .framework-hero { padding-top: 3rem; }
  .framework-hero h1 { font-size: clamp(3.7rem, 18vw, 5.8rem); }
  .framework-summary { grid-template-columns: 1fr; }
  .framework-summary span {
    min-height: 0;
    padding: .8rem 0;
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.18);
  }
  .framework-summary span + span { padding-left: 0; }
  .framework-summary span:last-child { border-bottom: 0; }
  .framework-summary strong {
    display: inline-block;
    width: 2.8rem;
    margin: 0 .6rem 0 0;
    font-size: 1.8rem;
    vertical-align: -.1em;
  }
  .framework-index { grid-template-columns: repeat(2, 1fr); }
  .framework-index a,
  .framework-index a:nth-child(4) { border-right: 1px solid rgba(255,255,255,.18); }
  .framework-index a:nth-child(even) { border-right: 0; }
  .framework-index a:nth-child(-n+6) { border-bottom: 1px solid rgba(255,255,255,.18); }
  .framework-index a:nth-child(odd) { padding-left: 0; }

  .framework-variable { padding: 4.5rem 0; }
  .framework-variable::before { top: 4.3rem; font-size: 9rem; }
  .framework-variable .section-head {
    padding-top: .9rem;
    border-top-width: 2px;
  }
  .framework-variable .section-head h2 { font-size: clamp(2.7rem, 13vw, 4.4rem); }
  .framework-variable .section-head > p {
    padding-left: 1rem;
    border-left-width: 2px;
  }
  .framework-variable > .container > .grid-2 { grid-template-columns: 1fr; }
  .framework-variable .callout { min-height: 0; }
  .framework-variable .callout:first-child {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }
  .framework-claims .claim {
    grid-template-columns: 1fr;
    gap: .75rem;
    padding: 1.15rem 1rem;
  }
  .framework-claims .anchor { grid-column: 1; }
  .framework-interdependencies .directive-meta { grid-template-columns: 1fr; }
  .framework-interdependencies .tag { min-height: 58px; }
}

/* SITEWIDE EDITORIAL ELEVATION 2026-10-06 */
.editorial-hero,
.directives-page .catalogue-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(4rem, 8vw, 8rem) 0 clamp(3.5rem, 7vw, 6.5rem);
  background: var(--ink);
  color: #f7f4ed;
  border-bottom: 0;
}
.editorial-hero::after,
.directives-page .catalogue-hero::after {
  content: "";
  position: absolute;
  width: min(42vw, 560px);
  aspect-ratio: 1;
  right: -12vw;
  bottom: -72%;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 50%;
  box-shadow: 0 0 0 70px rgba(255,255,255,.018), 0 0 0 140px rgba(255,255,255,.012);
  pointer-events: none;
}
.editorial-hero .container,
.directives-page .catalogue-hero .container { position: relative; z-index: 1; }
.editorial-hero .eyebrow,
.directives-page .catalogue-hero .eyebrow { color: #9f9a91; }
.editorial-hero h1,
.directives-page .catalogue-hero h1 {
  max-width: 1080px;
  margin: .55rem 0 1.5rem;
  color: #f7f4ed;
  font-size: clamp(4rem, 8.2vw, 8.2rem);
  line-height: .88;
}
.editorial-hero .lede,
.directives-page .catalogue-hero .lede {
  max-width: 760px;
  margin: 0;
  color: #c9c4ba;
  font-size: clamp(1.08rem, 1.7vw, 1.35rem);
  line-height: 1.55;
}

.page-index {
  background: var(--ink);
  color: #f7f4ed;
  border-top: 1px solid rgba(255,255,255,.2);
  border-bottom: 1px solid rgba(255,255,255,.2);
}
.page-index .container { display: grid; grid-template-columns: repeat(3, 1fr); }
.page-index a {
  display: block;
  padding: 1rem 1.15rem 1.05rem;
  border-right: 1px solid rgba(255,255,255,.18);
  color: #c9c4ba;
  text-decoration: none;
}
.page-index a:first-child { padding-left: 0; }
.page-index a:last-child { border-right: 0; }
.page-index span {
  display: block;
  margin-bottom: .18rem;
  color: #77736c;
  font-family: var(--mono);
  font-size: .62rem;
  letter-spacing: .09em;
}
.page-index strong {
  font-size: .72rem;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.page-index a:hover,
.page-index a:focus-visible { color: #fff; background: rgba(255,255,255,.05); outline: none; }

/* Directives catalogue */
.directives-page .catalogue-hero h1 { font-size: clamp(5rem, 11vw, 10rem); }
.directives-page main > .section { padding-top: 0; }
.directives-page .filter-bar {
  position: sticky;
  top: 66px;
  z-index: 20;
  margin: 0 0 1rem;
  padding: 1rem 0;
  background: rgba(244,241,234,.96);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--line);
}
.directives-page .filter-button {
  min-height: 34px;
  padding: .48rem .72rem;
  background: transparent;
  border-color: #aaa59b;
  font-family: var(--mono);
  font-size: .67rem;
}
.directives-page .directive-list { border-top: 3px solid var(--ink); }
.directives-page .directive-row {
  position: relative;
  grid-template-columns: 86px minmax(220px,.42fr) minmax(0,1fr);
  gap: clamp(1rem,3vw,3rem);
  min-height: 112px;
  padding: 1.45rem .25rem 1.55rem;
  transition: background .15s ease, padding .15s ease;
}
.directives-page .directive-row:hover {
  padding-left: .8rem;
  padding-right: .8rem;
  background: var(--paper);
}
.directives-page .directive-row::after {
  content: attr(data-root);
  position: absolute;
  top: 1.45rem;
  right: .25rem;
  color: #aaa59b;
  font-family: var(--mono);
  font-size: .58rem;
  font-weight: 800;
  letter-spacing: .08em;
}
.directives-page .directive-row .id {
  color: var(--ink);
  font-family: var(--serif);
  font-size: 2.15rem;
  line-height: .9;
  letter-spacing: -.05em;
}
.directives-page .directive-row h3 {
  padding-right: 3.5rem;
  font-size: 1.02rem;
  line-height: 1.22;
}
.directives-page .directive-row p {
  max-width: 720px;
  padding-right: 4.5rem;
  font-size: 1.03rem;
  line-height: 1.55;
}

/* Directive reading pages */
.directive-hero {
  position: relative;
  overflow: hidden;
  min-height: min(76vh, 760px);
  display: flex;
  align-items: center;
  padding: clamp(4rem, 8vw, 8rem) 0;
}
.directive-hero::before {
  content: "MZ";
  position: absolute;
  right: max(16px, calc((100vw - var(--max)) / 2));
  bottom: -.16em;
  color: rgba(255,255,255,.035);
  font-family: var(--serif);
  font-size: clamp(10rem, 25vw, 23rem);
  line-height: .8;
  letter-spacing: -.08em;
  pointer-events: none;
}
.directive-hero .container { position: relative; z-index: 1; }
.directive-hero .eyebrow { color: #aaa59b; }
.directive-hero h1 {
  max-width: 1050px;
  margin: .7rem 0 2rem;
  font-size: clamp(3.8rem, 9.4vw, 9.2rem);
  line-height: .84;
}
.directive-copy { max-width: 860px; }
.directive-copy p:first-child {
  margin-bottom: 1rem;
  color: #fff;
  font-size: clamp(1.55rem, 2.7vw, 2.4rem);
  line-height: 1.17;
}
.directive-copy p + p {
  max-width: 760px;
  color: #c5c0b7;
  font-size: clamp(1.02rem, 1.4vw, 1.2rem);
  line-height: 1.62;
}
.directive-hero .directive-meta {
  margin-top: 2.5rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(255,255,255,.2);
}
.directive-hero .tag { color: #d4cfc5; border-color: rgba(255,255,255,.35); }
.directive-hero .tag.primary { background: #f7f4ed; color: var(--ink); }

.directive-hero + .section .grid-2,
.directive-hero + .section > .container.grid-2 { gap: 0; border: 1px solid var(--line); }
.directive-hero + .section .callout {
  min-height: 190px;
  border: 0;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.directive-hero + .section .callout:nth-child(even) { border-right: 0; }
.directive-hero + .section .callout:nth-last-child(-n+2) { border-bottom: 0; }

.research-panel {
  gap: clamp(2rem, 6vw, 6rem);
  padding-top: .5rem;
  border-top: 3px solid var(--ink);
}
.research-panel .research-box {
  border-left: 0;
  border-top: 4px solid var(--accent);
  padding: clamp(1.5rem,3vw,2.4rem);
  background: var(--paper);
  box-shadow: 0 10px 0 rgba(17,17,17,.035);
}
.research-panel .research-box h3 {
  font-family: var(--mono);
  font-size: .68rem;
  letter-spacing: .09em;
}
.research-panel .disclaimer {
  padding-top: 1rem;
  border-top: 1px solid var(--line);
  line-height: 1.55;
}

/* Method */
.method-page #bridge .grid-4 {
  gap: 0;
  border-top: 1px solid var(--ink);
  border-left: 1px solid var(--line);
}
.method-page #bridge .card {
  position: relative;
  min-height: 300px;
  padding: 1.5rem;
  border: 0;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: transparent;
}
.method-page #bridge .card .eyebrow {
  color: var(--accent);
  font-size: 1rem;
}
.method-page #bridge .card h3 { margin-top: 2.5rem; }
.method-page #research-standard > .container.grid-2,
.method-page #editorial-standard > .container.grid-2 {
  gap: clamp(2rem, 6vw, 6rem);
  align-items: start;
}
.method-page #research-standard,
.method-page #editorial-standard { padding-top: clamp(5rem,9vw,8rem); }
.method-page #research-standard h2,
.method-page #editorial-standard h2 {
  max-width: 650px;
  font-size: clamp(3rem,6vw,5.8rem) !important;
  line-height: .9;
}
.method-page .status-panel {
  padding: 0;
  border: 0;
  border-top: 3px solid var(--ink);
  background: transparent;
}
.method-page .status-line {
  min-height: 62px;
  align-items: center;
  padding: .8rem .15rem;
}
.method-page #editorial-standard .grid-3 .card {
  min-height: 190px;
  border-top: 3px solid var(--ink);
  background: transparent;
}
.method-boundary {
  padding: 2.5rem 0;
  background: #ebe7de;
}
.method-boundary .callout { border: 0; background: transparent; padding: 0; }

/* Machine */
.machine-page #state > .container.grid-2 {
  gap: 0;
  border: 1px solid var(--line);
  background: var(--paper);
}
.machine-page #state .status-panel,
.machine-page #state .callout {
  border: 0;
  min-height: 330px;
  padding: clamp(1.4rem,3vw,2.4rem);
  background: transparent;
}
.machine-page #state .status-panel { border-right: 1px solid var(--line); }
.machine-page #state .status-line { min-height: 57px; align-items: center; }
.machine-page #pipeline .pipeline { border-top: 3px solid var(--ink); }
.machine-page #pipeline .pipe {
  position: relative;
  grid-template-columns: 92px minmax(180px,.35fr) minmax(0,1fr);
  gap: clamp(1rem,3vw,3rem);
  min-height: 102px;
  align-items: center;
  padding: 1rem .2rem;
}
.machine-page #pipeline .pipe-num {
  color: var(--ink);
  font-family: var(--serif);
  font-size: 2rem;
  letter-spacing: -.05em;
}
.machine-page #pipeline .pipe h3 { font-size: .82rem; }
.machine-page #pipeline .pipe p { max-width: 680px; line-height: 1.55; }
.machine-page #counters { padding: clamp(5rem,9vw,8rem) 0; }
.machine-page #counters .counters { margin-top: 2.5rem; }

/* Patterns */
.patterns-page .pattern-index {
  display: grid;
  grid-template-columns: repeat(10, 1fr);
  margin-top: clamp(3rem,6vw,5rem);
  border-top: 1px solid rgba(255,255,255,.22);
}
.patterns-page .pattern-index a {
  padding: .9rem .35rem 1rem;
  border-right: 1px solid rgba(255,255,255,.18);
  color: #c9c4ba;
  text-align: center;
  text-decoration: none;
}
.patterns-page .pattern-index a:first-child { text-align: left; padding-left: 0; }
.patterns-page .pattern-index a:last-child { border-right: 0; }
.patterns-page .pattern-index span {
  display: block;
  font-family: var(--serif);
  font-size: 1.65rem;
  line-height: 1;
}
.patterns-page .pattern-index strong {
  display: block;
  margin-top: .25rem;
  color: #77736c;
  font-family: var(--mono);
  font-size: .52rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.patterns-page main > .section .grid-2 {
  gap: 0;
  border-top: 3px solid var(--ink);
  border-left: 1px solid var(--line);
}
.patterns-page .pattern-card {
  min-height: 390px;
  padding: clamp(1.4rem,3vw,2.3rem);
  border: 0;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: transparent;
}
.patterns-page .pattern-card:hover {
  transform: none;
  background: var(--paper);
}
.patterns-page .pattern-card .meta-row { margin-bottom: 3rem; }
.patterns-page .pattern-card h3 {
  max-width: 480px;
  font-family: var(--serif);
  font-size: clamp(2rem,3.5vw,3.2rem);
  font-weight: 400;
  line-height: .95;
  letter-spacing: -.04em;
}
.patterns-page .pattern-card .pattern-line {
  max-width: 540px;
  font-size: 1.18rem;
  line-height: 1.45;
}

/* Research */
.research-page .editorial-hero { padding-bottom: 0; }
.research-page .research-index { margin-top: clamp(3rem,6vw,5rem); }
.research-page main > .section:nth-of-type(2) {
  padding: 2.5rem 0;
  background: #ebe7de;
}
.research-page main > .section:nth-of-type(2) .callout {
  padding: 0;
  border: 0;
  background: transparent;
}
.research-root {
  position: relative;
  padding: clamp(4.5rem,8vw,7rem) 0;
  scroll-margin-top: 70px;
}
.research-root .section-head {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(280px,.48fr);
  gap: clamp(2rem,5vw,5rem);
  align-items: start;
  margin-bottom: 2.5rem;
  padding-top: 1rem;
  border-top: 3px solid var(--ink);
}
.research-root .section-head h2 {
  max-width: 760px;
  font-size: clamp(3rem,5.8vw,5.5rem);
  line-height: .91;
}
.research-root .section-head p {
  padding-left: 1rem;
  border-left: 3px solid var(--accent);
}
.research-root .claim {
  grid-template-columns: 150px minmax(0,1fr) 190px;
  gap: 1.5rem;
  padding: 1.35rem 1rem;
  border-left: 1px solid var(--line);
  border-right: 1px solid var(--line);
  background: var(--paper);
}
.research-root .claim:first-of-type { border-top: 1px solid var(--line); }
.research-root .claim p {
  font-family: var(--serif);
  font-size: 1.03rem;
  line-height: 1.55;
}

/* About */
.about-page main > .section:nth-of-type(2) > .container.grid-2 {
  gap: clamp(2rem,6vw,6rem);
  align-items: start;
}
.about-page main > .section:nth-of-type(2) h2 {
  font-size: clamp(3rem,6vw,5.6rem) !important;
  line-height: .91;
}
.about-page main > .section:nth-of-type(2) .callout {
  margin-top: .4rem;
  border-left: 4px solid var(--accent);
}
.about-page main > .section:nth-of-type(3) .grid-3 {
  gap: 0;
  border-top: 3px solid var(--ink);
  border-left: 1px solid var(--line);
}
.about-page main > .section:nth-of-type(3) .card {
  min-height: 240px;
  border: 0;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: transparent;
}

/* Changes */
.changes-page main > .section:first-child {
  padding: clamp(4rem,8vw,7rem) 0;
  background: var(--ink);
  color: #f7f4ed;
}
.changes-page main > .section:first-child .eyebrow { color: #aaa59b; }
.changes-page main > .section:first-child h2 {
  max-width: 860px;
  margin: .5rem 0 1.2rem;
  font-family: var(--serif);
  font-size: clamp(3.5rem,7vw,6.8rem);
  font-weight: 400;
  line-height: .9;
  letter-spacing: -.05em;
}
.changes-page main > .section:first-child p { max-width: 720px; color: #c9c4ba; }
.changes-page main > .section:not(:first-child):not(.page-hero) {
  padding: 2rem 0;
}
.changes-page main > .section:not(:first-child):not(.page-hero) .container {
  display: grid;
  grid-template-columns: 290px minmax(0,1fr);
  gap: clamp(1.5rem,5vw,5rem);
  align-items: start;
}
.changes-page main > .section:not(:first-child):not(.page-hero) .eyebrow { grid-column: 1; }
.changes-page main > .section:not(:first-child):not(.page-hero) h2,
.changes-page main > .section:not(:first-child):not(.page-hero) p { grid-column: 2; }
.changes-page main > .section:not(:first-child):not(.page-hero) h2 {
  margin: 0 0 .5rem;
  font-family: var(--serif);
  font-size: clamp(1.7rem,3vw,2.55rem);
  font-weight: 400;
  letter-spacing: -.03em;
}
.changes-page .page-hero {
  padding: 3rem 0;
  background: #ebe7de;
}
.changes-page .page-hero h1 { font-size: clamp(2.8rem,6vw,5rem); }

/* Privacy */
.privacy-page main > .section:nth-of-type(2) > .container.grid-2 {
  gap: 0;
  border: 1px solid var(--line);
}
.privacy-page main > .section:nth-of-type(2) .callout {
  min-height: 260px;
  padding: clamp(1.5rem,3vw,2.4rem);
  border: 0;
  background: transparent;
}
.privacy-page main > .section:nth-of-type(2) .callout:first-child {
  border-right: 1px solid var(--line);
  background: var(--paper);
}
.privacy-page main > .section:nth-of-type(3) { background: #ebe7de; }
.privacy-page main > .section:nth-of-type(3) h2 {
  max-width: 680px;
  font-size: clamp(2.5rem,5vw,4.3rem) !important;
  line-height: .95;
}

@media (max-width: 900px) {
  .directives-page .directive-row { grid-template-columns: 72px minmax(180px,.42fr) minmax(0,1fr); gap: 1rem; }
  .method-page #bridge .grid-4 { grid-template-columns: repeat(2,1fr); }
  .patterns-page .pattern-index { grid-template-columns: repeat(5,1fr); }
  .patterns-page .pattern-index a:nth-child(5) { border-right: 0; }
  .patterns-page .pattern-index a:nth-child(-n+5) { border-bottom: 1px solid rgba(255,255,255,.18); }
  .research-root .claim { grid-template-columns: 125px minmax(0,1fr); }
  .research-root .claim .anchor { grid-column: 2; }
}

@media (max-width: 680px) {
  .editorial-hero,
  .directives-page .catalogue-hero { padding: 3.25rem 0 3rem; }
  .editorial-hero h1,
  .directives-page .catalogue-hero h1 { font-size: clamp(3.4rem,16vw,5.4rem); }
  .page-index .container { grid-template-columns: 1fr; }
  .page-index a,
  .page-index a:first-child { padding: .8rem 0; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.18); }
  .page-index a:last-child { border-bottom: 0; }

  .directives-page .filter-bar { top: 66px; overflow-x: auto; flex-wrap: nowrap; padding-bottom: .85rem; }
  .directives-page .filter-button { flex: 0 0 auto; }
  .directives-page .directive-row { grid-template-columns: 55px 1fr; min-height: 0; padding: 1.2rem 0; }
  .directives-page .directive-row p { grid-column: 2; padding-right: 0; }
  .directives-page .directive-row::after { display: none; }
  .directives-page .directive-row .id { font-size: 1.5rem; }
  .directives-page .directive-row h3 { padding-right: 0; }

  .directive-hero { min-height: 0; align-items: flex-start; padding: 4rem 0; }
  .directive-hero h1 { font-size: clamp(3.4rem,16vw,5.7rem); }
  .directive-copy p:first-child { font-size: 1.45rem; }
  .directive-hero + .section .grid-2,
  .directive-hero + .section > .container.grid-2 { grid-template-columns: 1fr; }
  .directive-hero + .section .callout { border-right: 0; }
  .directive-hero + .section .callout:nth-last-child(2) { border-bottom: 1px solid var(--line); }

  .method-page #bridge .grid-4 { grid-template-columns: 1fr; }
  .method-page #bridge .card { min-height: 235px; }
  .machine-page #state > .container.grid-2 { grid-template-columns: 1fr; }
  .machine-page #state .status-panel { border-right: 0; border-bottom: 1px solid var(--line); }
  .machine-page #pipeline .pipe { grid-template-columns: 55px 1fr; gap: .5rem 1rem; min-height: 0; padding: 1rem 0; }
  .machine-page #pipeline .pipe p { grid-column: 2; }

  .patterns-page .pattern-index { grid-template-columns: repeat(2,1fr); }
  .patterns-page .pattern-index a,
  .patterns-page .pattern-index a:nth-child(5) { border-right: 1px solid rgba(255,255,255,.18); border-bottom: 1px solid rgba(255,255,255,.18); }
  .patterns-page .pattern-index a:nth-child(even) { border-right: 0; }
  .patterns-page .pattern-card { min-height: 330px; }

  .research-root .section-head { grid-template-columns: 1fr; }
  .research-root .claim { grid-template-columns: 1fr; }
  .research-root .claim .anchor { grid-column: 1; }

  .changes-page main > .section:not(:first-child):not(.page-hero) .container { grid-template-columns: 1fr; gap: .4rem; }
  .changes-page main > .section:not(:first-child):not(.page-hero) .eyebrow,
  .changes-page main > .section:not(:first-child):not(.page-hero) h2,
  .changes-page main > .section:not(:first-child):not(.page-hero) p { grid-column: 1; }
}

