strategy:root {
  /* Canonical type scale — keep inline font-sizes on these steps:
     14 · 16 · 18 · 20 · 24 · 28 · 32 · 40 · 48 · 56 · 64 · 72 · 96 (px)
     Roles: 14/16 = mono labels & captions · 18/20 = body · 24/28 = lead/sub
            32/40 = h2 / statements · 48/56/64 = hero · 72/96 = title. */
  /* High-contrast operational palette: not wedding, not soft. */
  --bg: #f2ede6; /* parchment, but dirtier / less bridal */
  --bg2: #FBFAF7; /* parchment, but dirtier / less bridal */
  --bg3: #F3E9DA;
  --ink: #11100E; /* near-black ink */
  --ink2: #32302C;
  --accent: #B8860B; /* KING bronze */
  --accent2: #D39C21; /* hard gold highlight */
  --paper: #f2f0ed; /* warm document card */
  --line: #A99A87; /* stronger rule line */
  --chrome: #080806; /* crisis / intelligence black */
  --muted: #5E554B; /* readable muted text */
  --good: #1E6B3A; /* NARRATIVE UP / repair */
  --good-dark: #3F5A35;
  --bad: #8B1E1E; /* SUBVERSION burgundy */
  --sub-dark: #5C1E1A;
  --warn: #E67E22; /* WARNING / drift amber */
  --gold: #ffd24a; /* highlight gold */
  --law: #0d114c; /* LAW slate-blue */
  --law2: #4fadff; /* LAW electric teal */
  --lawbg: #D9F0F2; /* LAW light field */
  --king: #d99f0d; /* KING bronze */
  --kingdark: #592d00; /* KING dark bronze */
  --kingbg: #f7edd2; /* KING light field */
  --erase: #34444F; /* ERASE grey-blue */
  --bg-color: #0f172a;
  --grey-bg: #1e293b;
	    --bad-bright: #E63946;
	    --card-dark: #161512;
  --border-grey: #334155;
  --erase-muted: #94a3b8;
  --redbg: #F6DADA; /* subversion field */
  --greenbg: #E7EFE1; /* repair field */
  --erase-light: #687782;
}
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}
html, body {
  background: var(--grey-bg);
}
@page {
  size: 1280px 720px;
  margin: 0;
}
/* === REBECCA OVERRIDE · MAKE THE MECHANISM VISIBLE === */
body {
  font-family: Inter, Aptos, "Segoe UI", Arial, sans-serif;
  color: var(--ink);
  background: var(--grey-bg);
}


@font-face {
    font-family: "Font Awesome 6 Free";
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")
}

.fa-regular,.far {
    font-weight: 400
}

:host,:root {
    --fa-style-family-classic: "Font Awesome 6 Free";
    --fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free"
}

@font-face {
    font-family: "Font Awesome 6 Free";
    font-style: normal;
    font-weight: 900;
    font-display: block;
    src: url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")
}

.fa-solid,.fas {
    font-weight: 900
}

@font-face {
    font-family: "Font Awesome 5 Brands";
    font-display: block;
    font-weight: 400;
    src: url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")
}

@font-face {
    font-family: "Font Awesome 5 Free";
    font-display: block;
    font-weight: 900;
    src: url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")
}

@font-face {
    font-family: "Font Awesome 5 Free";
    font-display: block;
    font-weight: 400;
    src: url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")
}

@font-face {
    font-family: "FontAwesome";
    font-display: block;
    src: url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")
}

@font-face {
    font-family: "FontAwesome";
    font-display: block;
    src: url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")
}

@font-face {
    font-family: "FontAwesome";
    font-display: block;
    src: url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype");
    unicode-range: u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc
}

@font-face {
    font-family: "FontAwesome";
    font-display: block;
    src: url(../webfonts/fa-v4compatibility.woff2) format("woff2"),url(../webfonts/fa-v4compatibility.ttf) format("truetype");
    unicode-range: u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a
}

.slide {
  position: relative;
  width: 1280px;
  height: 720px;
  overflow: scroll;
	color: var(--ink);
  background: var(--bg);
  padding: 58px 78px 70px;
  break-before: page;
  page-break-before: always;
  display: flex;
  flex-direction: column;
  border-top: 6px solid var(--accent);
  background-image: linear-gradient(rgba(17, 16, 14, .022) 1px, transparent 1px), linear-gradient(90deg, rgba(17, 16, 14, .022) 1px, transparent 1px);
  background-size: 48px 48px;
  box-shadow: inset 0 0 0 1px rgba(17, 16, 14, .16);
}
.slide.def {
  background: var(--paper);
  background-image: radial-gradient(var(--line) 1px, transparent 1px);
  background-size: 38px 38px;
  border-top: 6px solid var(--sub-dark);
  box-shadow: inset 0 0 0 1px rgba(17, 16, 14, .16);
}
.slide:first-child {
  break-before: auto;
  page-break-before: avoid;
}
.slide.dark {
  color: var(--bg2);
  background: var(--chrome);
  background-image: radial-gradient(rgba(244, 194, 71, .06) 1px, transparent 1px);
  background-size: 40px 40px;
  border-top-color: var(--gold);
}
.slide.redbg {
  background: linear-gradient(135deg, #FBE8E4 0%, #DDB4AC 100%);
  border-top-color: var(--bad);
}
.slide.greenbg {
  background: linear-gradient(135deg, #EAF8DD 0%, #A9D49F 100%);
  border-top-color: var(--good);
}
.slide.bg {
  background: var(--bg2);
  background-image: radial-gradient(#cfdcc4 1px, transparent 1px);
}
.mono {
  font-family: "SF Mono", Menlo, Consolas, monospace;
}
.kicker {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 16px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--accent);
  font-weight: 800;
}

.dark .kicker {
  color: var(--gold);
}
.redbg .kicker {
  color: var(--bad);
}
.greenbg .kicker {
  color: var(--good);
}
.hl {
  color: var(--accent);
  font-weight: 800;
}
.dark .hl {
  color: var(--gold);
}
b {
  font-weight: bold;
}
.slidenum {
  position: absolute;
  bottom: 28px;
  right: 46px;
  font-family: "SF Mono", Menlo, monospace;
  font-size: 13px;
  color: var(--muted);
}
.brandfoot {
  position: absolute;
  bottom: 28px;
  left: 78px;
  font-family: "SF Mono", Menlo, monospace;
  font-size: 12px;
  letter-spacing: .08em;
  color: var(--muted);
}
.dark .brandfoot, .dark .slidenum {
  color: #9b8b7c;
}
h1 {
  font-style: italic;
  font-weight: normal;
  letter-spacing: -.5px;
}
.slide h2 {
  font-style: italic;
  font-weight: normal;
  font-size: clamp(21px, 5.99vw, 46px);
  line-height: 1.08;
  margin: 8px 0 6px;
}
.dark h2 {
  color: #f3ece4;
}
.center {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
}
.center.loopcore {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 230px;
    height: 230px;
    border-radius: 50%;
    background: var(--law);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 29px;
    line-height: 1.05;
    font-weight: 950;
	box-shadow: 0 12px 28px rgba(17, 16, 14, .22);}

.center.mid {
  align-items: center;
  text-align: center;
}
.note {
  font-size: 23px;
  line-height: 1.5;
  color: #4a3f38;
  max-width: 1040px;
}
.dark .note {
  color: #c9bbac;
}
/* TITLE */
.title-wrap {
  margin: auto 0;
}
.title-wrap .q {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 32px;
  color: var(--warn);
  margin-bottom: 22px;
  letter-spacing: .04em;
  font-weight: 900;
}
.title-wrap h1 {
  font-size: clamp(43px, 12.5vw, 96px);
  line-height: 1.02;
  color: var(--ink);
}
.dark h1{
	color: var(--bg2);
}
.title-wrap h1 {
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: -2px;
}
.title-wrap .big {
  font-style: normal;
  font-weight: bold;
  font-size: 34px;
  line-height: 1.15;
  margin-top: 20px;
  color: #fff;
  max-width: 900px;
}
.title-wrap .big {
  font-size: 36px;
  max-width: 940px;
}
.rule {
  width: 120px;
  height: 4px;
  background: var(--gold);
  margin: 28px 0 0;
  border-radius: 2px;
}
.promise {
  margin-top: 30px;
  font-size: 25px;
  font-weight: bold;
  line-height: 1.3;
  color: #f0e7da;
  max-width: 860px;
}
.promise {
  border-left: 6px solid var(--gold);
  padding-left: 22px;
  color: #FFF4DD;
}
.promise .hl {
  color: var(--accent2);
}
/* SECTION DIVIDER */
.divider {
  flex: 1;
  display:flex;
  flex-direction: column;
  justify-content: center;
  border-left: 6px solid var(--accent);
  padding-left: 34px;
	z-index: 2;
}
.divider {
  border-left: 12px solid var(--accent);
}
.divider .pre {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 18px;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: var(--accent2);
  margin-bottom: 18px;
}
.divider .pt {
  font-size: clamp(49px, 14.06vw, 108px);
  font-style: italic;
  line-height: 1;
  color: var(--ink);
}
.divider .pt {
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: -2px;
  font-size: clamp(41px, 11.98vw, 92px);
}
.divider .sub {
  margin-top: 24px;
  font-size: 24px;
  font-style: italic;
  color: var(--muted);
  max-width: 980px;
  line-height: 1.4;
	
}

/* DEFINITION TEMPLATE */
.def {
  margin: auto 0;
}
.def .word {
  font-size: clamp(32px, 9.375vw, 72px);
  font-style: italic;
  line-height: 1;
  color: var(--ink);
  margin-bottom: 24px;
}
.def .word {
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: -1.5px;
}
.def .body {
  font-size: 22px;
  line-height: 1.5;
  color: var(--ink);
  border-left: 4px solid var(--accent);
  padding-left: 26px;
}
.def .body {
  border-left: 8px solid var(--sub-dark);
  background: rgba(255, 248, 244, .5);
  padding: 22px 28px;
  max-width: 850px;
  border-radius: 0 14px 14px 0;
  font-size: 20px;
}
.punch {
  border-left: 4px solid var(--accent);
  border-right: 4px solid var(--accent);
  text-transform: uppercase;
  padding: 26px;
	 max-width: min(1020px, 100%);
}
.def .opdef {
  margin-top: 26px;
  font-size: 32px;
  font-weight: bold;
  line-height: 1.22;
  color: var(--ink);
  max-width: 1000px;
}
.def .opdef {
  font-size: 34px;
}
.def .beat {
  margin-top: 30px;
  font-size: 30px;
  font-style: italic;
  font-weight: bold;
  color: var(--accent);
}
.def .beat {
  color: var(--bad);
  font-style: normal;
}
.grid2 { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:22px; }
  .grid3 { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:22px; }
  .grid4 { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:20px; }
  .card {
	  color: var(--ink);
    background:var(--paper);
    border:2px solid #1B1712;
    box-shadow:8px 8px 0 rgba(17,16,14,.14);
    padding:18px 20px;
    min-height:118px;
	  align-items: stretch;
  }
  .dark .card { background:#171510; border-color:#443c31; box-shadow:8px 8px 0 rgba(244,194,71,.12); }
  .card.king { border-top:14px solid var(--kingdark); background:linear-gradient(135deg,#F4E2B3,#E1B950); }
  .card.law { border-top:14px solid var(--law); background:linear-gradient(135deg,#D9F0F2,#83C2CA); }

.slide.law {
    border-top-color: var(--law);
    background: linear-gradient(135deg, #f3eee6 0%, #d9f0f2 100%);
}
  .card.bad { border-top:14px solid var(--bad); background:#F1C2BA; color: var(--ink);}
.dark  .card.bad { border-top:14px solid var(--bad); background:var(--ink); color: var(--bg3);}
  .card.good { border-top:14px solid var(--good); background:#D9EFCB; }
 .dark .card.good { border-top:14px solid var(--good); background:var(--ink); color: var(--greenbg) }
  .card .title {
    font-size:26px;
    line-height:1.08;
    font-weight:900;
    margin-bottom:8px;
	  color: var(--ink);
  }
  .card .txt {
    font-size:20px;
    line-height:1.25;
    color:#3f382f;
  }
  .dark .card .txt { color:#e6d8c9; }
.quote {
	color: var(--bg-color);
  border-left: 16px solid var(--law);
  box-shadow: 10px 10px 0 rgba(17, 16, 14, .16);
  padding: 20px 26px;
  font-size: 28px;
  line-height: 1.24;
  font-weight: 800;
  margin-top: 18px;
	border-radius: 0px 8px 8px 0px;
}
.dark .quote {
  background: #171510;
  border-color: #4a4034;
  border-left-color: var(--gold);
  color: #f3ece4;
}
.heroflow {
  display: flex;
  align-items: ce;
  justify-content: center;
	align-content: center;
  gap: 10px;
  margin-top: 22px;
  flex-wrap: wrap;
}
.heroflow .node {
  background: var(--paper);
  border: 3px solid var(--ink);
  box-shadow: 6px 6px 0 rgba(17, 16, 14, .14);
  padding: 16px 18px;
  min-height: 78px;
  min-width: 130px;
  max-width: 240px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 20px;
  font-weight: 900;
  line-height: 1.13;
}
/* HORIZONTAL FLOW */
.flow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  flex-wrap: wrap;
}
.flow .fp {
  font-size: 30px;
  font-weight: bold;
  color: var(--ink);
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 16px 26px;
}
.flow .fp.key {
  background: var(--accent);
  border: 2px solid var(--accent);
  color: #fff;
}
.dark .flow .fp.key {
  background: var(--unk);
  border: 2px solid var(--gold);
  color: var(--bg2);
}
.flow .fa {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 30px;
  color: var(--accent2);
  font-weight: bold;
}
/* STATEMENT */
.statement {
  margin: auto 0;
}
.statement .big {
  font-size: clamp(23px, 6.51vw, 50px);
  font-style: italic;
  line-height: 1.14;
}
.dark .statement .big {
  color: #f3ece4;
}

.statement .note {
  margin-top: 24px;
}
/* === STRUCTURAL / BOLD SYSTEM === */
.hero {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.hero .huge {
  font-style: normal;
  font-weight: bold;
  font-size: clamp(27px, 7.812vw, 60px);
  line-height: 1.05;
  letter-spacing: -1px;
  color: var(--ink);
}
.dark .hero .huge, .dark .huge {
  color: #f7f1e9;
}
.huge {
	font-size: 18px;
  font-style: normal;
  font-weight: bold;
  letter-spacing: -1px;
  color: var(--ink);
}
.slide .sub {
  font-size: 24px;
  line-height: 1.45;
  color: var(--muted);
  max-width: min(1020px, 100%);
	margin-top: 12px;
}
.dark .hero .sub, .dark .sub {
  color: #c9bbac;
}

.hero .sub b {
  color: var(--ink);
}
.dark .hero .sub b {
  color: #fff;
}
.bigstate {
  font-size: clamp(19px, 5.469vw, 42px);
  font-style: italic;
  line-height: 1.16;
  color: var(--ink);
  max-width: min(1060px, 100%);
}
.bigstate .small {
  display: block;
  font-size: 20px;
  font-style: normal;
  color: var(--muted);
  margin-top: 12px;
}
.think {
  margin-top: 24px;
  font-family: "SF Mono", Menlo, monospace;
  font-size: 23px;
  color: var(--accent2);
}
.dark .think {
  color: var(--gold);
}
.means {
  margin-top: 20px;
  font-size: 32px;
  font-style: italic;
  color: var(--bad);
}
.greenbg .means {
  color: #3f5a35;
}
/* node-flow diagram */
.diagram {
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
  margin: 8px 0;
  position: relative;
  z-index: 1;
}
.node {
  background: var(--paper);
  border: 2px solid var(--accent);
  border-radius: 14px;
  padding: 18px 22px;
  font-size: 21px;
  font-weight: bold;
  color: var(--ink);
  display: flex;
  align-items: center;
  text-align: center;
  min-height: 84px;
  max-width: 350px;
  line-height: 1.22;
}
.node {
  border-width: 2px;
}
.node.bad {
  border-color: var(--bad);
  color: var(--bad);
  background: var(--redbg);
}
.node.bad {
  background: var(--redbg);
  border-color: var(--bad);
  color: var(--sub-dark);
}
.node.good {
  border-color: var(--good);
  color: var(--good-dark);
  background: var(--greenbg);
}
.node.dim {
  border-style: dashed;
  border-color: var(--muted);
  color: var(--muted);
  font-weight: normal;
}
.node.dim {
  background: var(--bg3);
  border-color: var(--erase);
  color: var(--erase);
}
.conn {
  display: flex;
  align-items: center;
  padding: 0 14px;
  font-size: 34px;
  color: var(--accent2);
  font-weight: bold;
}
.conn {
  color: var(--accent);
}
.dark .conn {
  color: var(--gold);
}
/* big two-column hero */
.duo {
  display: flex;
  gap: 30px;
  margin: 10px 0;
}
.thin{
	max-width: 400px;
}
.duo.tall {
  flex: 1;
}

.pane {
  flex: 1;
  display: flex;
  flex-direction: column;
  border-radius: 18px;
  padding: 34px 34px;
	margin: 8px 0px;
  border: 1px solid var(--line);
  background: var(--paper);
}
.pane .thin{
	max-width: 600px;
}

.pane.kingp {
  background: linear-gradient(135deg, #F4E2B3 0%, #C9992E 100%);
  border: 4px solid var(--kingdark);
  border-top: 18px solid var(--kingdark);
  color: #1A1306;
}
.pane.kingp {
  background: linear-gradient(135deg, #F4E2B3 0%, #C9992E 100%);
  border: 4px solid var(--kingdark);
  border-top: 18px solid var(--kingdark);
  color: #1A1306;
}
.pane.tribep {
  border-top: 10px solid var(--bad);
}
.pane.tribep {
  background: linear-gradient(135deg, #FBE8E4 0%, #DDB4AC 100%);
  border-top-color: var(--bad);
  border: 4px solid var(--bad);
  border-top: 18px solid var(--bad);
  color: #1A1306;
}
.pane.collp {
  border-top: 10px solid var(--good);
}
.pane.collp {
  background: linear-gradient(135deg, #EAF8DD 0%, #A9D49F 100%);
  border-top-color: var(--good);
  border: 4px solid var(--good);
  border-top: 18px solid var(--good);
  color: #1A1306;
}
.pane.lawp {
  border-top: 10px solid var(--law);
}
.pane.lawp {
  background: linear-gradient(135deg, #D9F0F2 0%, #6DB5BE 100%);
  border: 4px solid var(--law);
  border-top: 18px solid var(--law);
  color: #061B22;
}
.pane.lawp {
  background: linear-gradient(135deg, #D9F0F2 0%, #6DB5BE 100%);
  border: 4px solid var(--law);
  border-top: 18px solid var(--law);
  color: #061B22;
}
.pane .tag {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 15px;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 10px;
}
.pane.kingp .tag {
  color: var(--kingdark);
}
.card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.duo-card {
    background: var(--card-dark);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    padding: 28px 32px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
    position: relative;
    overflow: hidden;
}
.duo-card.law-card {
    border-top: 4px solid var(--gold);
    background: linear-gradient(180deg, rgba(244, 194, 71, 0.05) 0%, rgba(22, 21, 18, 0.95) 100%);
}

.card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.card-title {
    font-size: 28px;
    font-weight: 800;
    letter-spacing: -0.5px;
    margin-bottom: 20px;
    color: #FFFFFF;
}
.card-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 14px;
    flex: 1;
}
.card-list li {
    font-size: 17px;
    line-height: 1.4;
    color: #D4CDC3;
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.card-list li i {
    font-size: 14px;
    margin-top: 4px;
    flex-shrink: 0;
}

.law-card .card-list li i {
    color: var(--gold);
}

.subversion-card .card-list li i {
    color: var(--bad-bright);
}

/* Container for the 3-step sequence */
.hijack-grid {
  display: flex;
  gap: 20px;
  margin-top: 24px;
}

/* Individual dark card styling */
.hijack-step {
  flex: 1;
  background: #2A241D;
  border: 1px solid #4A4034;
  border-top: 6px solid var(--gold);
  border-radius: 10px;
  padding: 24px 22px;
  display: flex;
  flex-direction: column;
}

/* Step number badge */
.hijack-step .num {
  font-family: "SF Mono", Menlo, Consolas, monospace;
  font-size: 28px;
  font-weight: 900;
  color: var(--gold);
  margin-bottom: 10px;
}

/* Step title */
.hijack-step .title {
  font-size: 22px;
  font-weight: 800;
  color: #F7F1E9;
  margin-bottom: 12px;
  line-height: 1.25;
}

/* Step description text */
.hijack-step .desc {
  font-size: 16px;
  line-height: 1.45;
  color: #D8CBBB;
}

/* Two-column layout for objective vs wedge metrics */
.wedge-duo {
  display: flex;
  gap: 24px;
  margin-top: 18px;
}

.wedge-pane {
  flex: 1;
  background: var(--paper);
  border: 2px solid var(--line);
  border-radius: 10px;
  padding: 24px;
}

.wedge-pane.objective {
  border-top: 10px solid var(--law);
  background: var(--lawbg);
}

.wedge-pane.subversive {
  border-top: 10px solid var(--bad);
  background: var(--redbg);
}

.wedge-pane .pane-tag {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 13px;
  letter-spacing: .12em;
  text-transform: uppercase;
  font-weight: 800;
  margin-bottom: 8px;
}

.wedge-pane.objective .pane-tag { color: var(--law); }
.wedge-pane.subversive .pane-tag { color: var(--bad); }

.wedge-pane .pane-title {
  font-size: 26px;
  font-weight: 800;
  margin-bottom: 12px;
}

.pane.lawp .tag {
  color: var(--law);
}

.pane .nm {
  font-size: clamp(18px, 5.208vw, 40px);
  font-weight: bold;
  margin: 8px 0px;
}
.pane .nm {
  font-size: clamp(25px, 7.292vw, 56px);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: -1px;
}

.pane .ask {
  font-size: 27px;
  font-style: italic;
  line-height: 1.3;
  color: #4a3f38;
  flex: 1;
}
.pane .ask {
  font-size: 34px;
  font-style: normal;
  font-weight: 900;
  color: inherit;
}
.pane .ask {
  font-size: 27px;
  font-style: normal;
  font-weight: 900;
  color: inherit;
}
.pane .corr {
  margin-top: 12px;
  font-family: "SF Mono", Menlo, monospace;
  font-size: 17px;
  padding-top: 18px;
  line-height: 1.2;
  border-top: 1px dashed var(--line);
  color: #5a4e45;
}
.pane .corr {
  font-size: 20px;
  color: inherit;
  border-top: 2px solid rgba(17, 16, 14, .25);
}
.pane .corr {
  font-size: 20px;
  color: inherit;
  border-top: 2px solid rgba(17, 16, 14, .25);
}
/* timeline */
.timeline {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
.tnode {
  background: var(--paper);
  border: 1.5px solid var(--line);
  border-radius: 12px;
  padding: 16px 18px;
  font-size: 18px;
  font-weight: bold;
  color: var(--ink);
  text-align: center;
}
.tnode {
  border: 3px solid var(--ink);
  background: #FFF8EA;
}
.tnode.miss {
  border: 2px dashed var(--bad);
  color: var(--bad);
  background: #f6e7e4;
  font-size: 20px;
}
.tnode.miss {
  border: 4px dashed var(--bad);
  background: var(--redbg);
  color: var(--sub-dark);
}
.tarrow {
  padding: 0 12px;
  color: var(--accent2);
  font-size: 24px;
  font-weight: bold;
}
/* ladder */
.ladder {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.rung {
  display: flex;
  align-items: center;
  gap: 14px;
  background: var(--paper);
  border: 1px solid var(--line);
  border-left: 6px solid var(--bad);
  border-radius: 0px 8px 8px 0px;
  padding: 8px 16px;
}
.rung {
  border-left-width: 12px;
  background: #FFF8EA;
}
.rung.law{
	border-left-color: var(--law);
}
.rung.king{
	border-left-color: var(--kingdark);
}
.rung.gold{
	border-left-color: var(--accent);
}
.rung.good{
	border-left-color: var(--good);
}
.rung .rn {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 24px;
	padding: 6px;
  color: #fff;
  background: var(--bad);
  min-width: 28px;
  border-radius: 6px;
  display: flex;
	flex: auto;
	
	align-content: flex-start;
  align-items: center;
  justify-content: space-between;
}
.rung.law .rn{
	background: var(--law);
}
.rung.king .rn{
	background: var(--kingdark);
}

.rung.gold .rn{
	background: var(--accent);
}
.rung.good .rn{
	background: var(--good);
}
.rung .rt {
	flex: auto;
	max-width: 500px;
	text-align: end;
  font-size: 16px;
  line-height: 1.25;
  color: #5a4e45;}
.rung .rt {
  font-size: 17px;
}
.rung .rt b {
  color: var(--ink);
}
/* phase blocks */
.phase {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin: auto 0;
}
.pblock {
  background: var(--paper);
  border: 1px solid var(--line);
  border-left: 8px solid var(--good);
  border-radius: 12px;
  padding: 20px 28px;
  display: flex;
  gap: 24px;
  align-items: center;
}
.pblock {
  border-left-width: 14px;
  background: var(--kingbg);
}
.pblock .ph {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 34px;
  font-weight: bold;
  color: var(--good);
  width: 46px;
  flex: none;
  text-align: center;
}
.pblock .ph {
  color: var(--good);
  font-weight: 900;
}
.pblock .pt2 {
  font-size: 26px;
  font-weight: bold;
  margin-bottom: 6px;
  color: var(--kingdark);
}
.pblock .pd {
  font-size: 18px;
  color: var(--ink);
  line-height: 1.4;
}
/* AI answer card */
.aicard {
  background: #fbf7f0;
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 6px 26px 14px;
  box-shadow: 0 10px 28px rgba(40, 32, 26, .10);
}
.dark .aicard {background: var(--ink2)}
.dark .aicard {
  box-shadow: none;
}
.missing {
  margin-top: 16px;
  background: #f6e7e4;
  border: 2px dashed var(--bad);
  border-radius: 12px;
  padding: 14px 22px;
  font-size: 23px;
  font-weight: bold;
  color: var(--bad);
  display: flex;
  align-items: center;
  gap: 12px;
}
.missing {
  border-radius: 0;
  background: var(--redbg);
  border: 3px dashed var(--bad);
  color: var(--sub-dark);
  box-shadow: 0 8px 22px rgba(17, 16, 14, .16);
}
/* loop diagram */
.loop {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
.lstep {
  background: var(--paper);
  border: 2px solid var(--accent);
  border-radius: 999px;
  padding: 14px 24px;
  font-size: 20px;
  font-weight: bold;
  color: var(--ink);
}
.lstep {
  border-width: 3px;
}
.lstep.warn {
  border-color: var(--warn);
  color: #6b5320;
  background: #f7efe2;
}
.lstep.warn {
  background: var(--warn);
  border-color: var(--ink);
  color: var(--chrome);
}
.lstep.good {
  border-color: var(--good);
  color: #3f5a35;
  background: var(--greenbg);
}
.lstep.good {
  background: var(--greenbg);
  border-color: var(--good);
  color: #123F22;
}
/* 4 big rows */
.bigrows {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 12px;
}
.bigrow {
  display: flex;
  align-items: stretch;
  border: 2px solid var(--ink);
  border-radius: 8px;
  overflow: hidden;
  background: var(--paper);
}


.bigrow .cell {
  padding: 14px 18px;
  font-size: 18px;
  line-height: 1.3;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.bigrow .c1 {
  flex: 1.1;
  background: var(--kingbg);
  font-weight: bold;
  color: var(--ink);
}
.bigrow .c2 {
  flex: 1;
  border-left: 1px solid var(--line);
  color: var(--muted);
}
.bigrow .c3 {
  flex: 1;
  border-left: 1px solid var(--line);
  color: var(--bad);
}
.bigrow .c3 {
  background: var(--redbg);
  color: var(--sub-dark);
  font-weight: 800;
}
.bigrow .c4 {
  flex: 1;
  border-left: 1px solid var(--line);
  color: #5a4e45;
}

.bigrow .c4 {
  background: var(--lawbg);
  color: var(--law);
  font-weight: 700;
}
.bigrow .c5 {
  flex: 1;
  border-left: 1px solid var(--line);
	font-weight: 700;
	 background: var(--bg2);
  color: var(--ink);
}
.bigrow.head {
  background: transparent;
  border: none;
}
.bigrow.head .c24l {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--accent);
  font-weight: normal;
  background: transparent;
  padding-top: 0;
  padding-bottom: 4px;
}
/* source cards */
.srccards {
  display: flex;
  gap: 20px;
  margin-bottom: 24px;
}
.srccards {
  gap: 20px;
}
.scard {
  flex: 1;
  background: var(--paper);
  border: 1px solid var(--line);
  border-top: 6px solid var(--accent);
  border-radius: 14px;
  padding: 22px 22px;
}
.scard {
  border-top-width: 12px;
  border-top-color: var(--law);
}
.scard .ref {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 15px;
  color: var(--accent);
  margin-bottom: 12px;
  font-weight: bold;
}
.scard .ref {
  color: var(--law);
  font-size: 16px;
}
.scard .txt {
  font-size: 24px;
  text-align: center;
  justify-content: space-between;
  line-height: 1.45;
  color: #4a3f38;
}
/* three big lines */
.threeline {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.threeline .tl {
  font-size: clamp(21px, 5.99vw, 46px);
  font-weight: bold;
  line-height: 1.14;
  color: #f7f1e9;
  border-left: 6px solid var(--gold);
  padding-left: 22px;
}
.threeline .tl {
  border-left: 10px solid var(--gold);
  font-size: clamp(23px, 6.51vw, 50px);
}
/* consequences */
.conseq {
  display: flex;
  gap: 16px;
  margin-top: 8px;
}
.conseq .cq {
  flex: 1;
  background: #2b2b2b;
  border: 1px solid #3a332c;
  border-left: 4px solid var(--gold);
  border-radius: 10px;
  padding: 16px 18px;
  font-size: 17px;
  line-height: 1.35;
  color: #d8cbbb;
}
.conseq .cq {
  background: #181512;
  border-left: 6px solid var(--gold);
  color: #F4E5D2;
  border-radius: 0;
}
/* contrast fix: consequence cards must not match the charcoal background */
.conseq .cq {
  background: #2A241D;
  border: 1px solid #4A4034;
}
/* operational pill / tag */
.tagpill {
  display: inline-flex;
  align-self: center;
  margin-top: 18px;
  font-family: "SF Mono", Menlo, monospace;
  font-size: 16px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #fff;
  background: var(--warn);
  border-radius: 8px;
  padding: 8px 16px;
}
/* footnote */
.foot {
  position: absolute;
  bottom: 54px;
  left: 78px;
  font-size: 12px;
  color: var(--muted);
  font-style: italic;
  max-width: 980px;
  line-height: 1.35;
}
.foot {
  background: rgba(255, 248, 234, .86);
  padding: 8px 12px;
  border-left: 4px solid var(--erase);
  color: #35302A;
}
/* four moves */
.moves {
  display: flex;
  flex-direction: column;
  gap: 11px;
  margin-top: 6px;
}
.moverow {
  display: flex;
  gap: 18px;
  align-items: baseline;
}
.moverow .mn {
  font-family: "SF Mono", Menlo, monospace;
  color: var(--gold);
  font-size: 19px;
  flex: none;
  width: 30px;
}
.moverow .mt {
  font-size: 19px;
  line-height: 1.32;
  color: #e7dccd;
}
.moverow .mt b {
  color: #fff;
}
/* STEP TAG */
.steptag {
  display: inline-flex;
  align-self: flex-start;
  font-family: "SF Mono", Menlo, monospace;
  font-size: 24px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #fff;
  background: var(--accent);
  border-radius: 8px;
  padding: 7px 15px;
  margin-bottom: 14px;
}
.steptag.bad {
  background: var(--bad);
}
.steptag.good {
  background: var(--good-dark);
}
.steptag.warn {
  background: var(--warn);
}
.steptag.law {
  background: var(--law);
}
/* SPIRAL bits */
.steplabel {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 15px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 14px;
}
.redbg .steplabel {
  color: var(--bad);
}
.greenbg .steplabel {
  color: var(--good);
}
.truetag {
  color: var(--good);
  font-weight: bold;
}
.alleged {
  color: var(--warn);
  font-weight: bold;
}
.drop {
  margin-top: 16px;
  display: inline-flex;
  align-self: center;
  font-family: "SF Mono", Menlo, monospace;
  font-size: 17px;
  color: #fff;
  background: var(--bad);
  border-radius: 8px;
  padding: 7px 15px;
}
/* AI PROMPT */
.prompt {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  align-self: flex-start;
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 30px;
  padding: 11px 22px;
  font-size: 24px;
  margin-bottom: 4px;
}
.dark .prompt {
  background: var(--muted);
  border-color: #4a3f37;
  color: #e8ddd0;
}
.prompt .who {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 24px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--accent);
  background: #fff;
  border-radius: 20px;
  padding: 4px 10px;
}
.arow {
  display: flex;
  gap: 18px;
  padding: 11px 0;
  border-bottom: 1px dashed var(--line);
}
.arow:last-of-type {
  border-bottom: none;
}
.arow .lab {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 18px;
  color: var(--accent);
  width: 250px;
  flex: none;
  padding-top: 3px;
}
.arow .txt {
  font-size: 18px;
  line-height: 1.42;
  color: #4a3f38;
}
/* ANNOTATION CARD */
.amend {
  background: var(--bg);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 20px 24px;
  font-size: 24px;
  line-height: 1.45;
  color: var(--chrome);
}
.amend .h {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 13px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 6px;
}
.amend + .amend {
  margin-top: 16px;
}
.callout {
  font-size: clamp(18px, 5.208vw, 40px);
  font-style: italic;
  line-height: 1.1;
}
.dark .callout{
	color: var(--bg3)
}
.callout .agency {
  display: inline-block;
  margin-top: 18px;
  font-size: 18px;
  font-family: "SF Mono", Menlo, monospace;
  background: var(--accent);
  color: #fff;
  border-radius: 8px;
  padding: 7px 14px;
  letter-spacing: .06em;
}
/* TWO COLUMN GENERIC */
.row {
  display: flex;
  gap: 40px;
  flex: 1;
  align-items: center;
}
.row .col {
  flex: 1;
}
.row.top {
  align-items: flex-start;
}
/* PHOTO */
.photo {
  border-radius: 14px;
  border: 1px solid rgba(0, 0, 0, .12);
  box-shadow: 0 14px 34px rgba(40, 32, 26, .22);
  overflow: hidden;
  background: #fff;
}
.photo {
  border-radius: 0;
  border: 3px solid var(--ink);
  box-shadow: 0 14px 32px rgba(17, 16, 14, .20);
}
.photo {
  border-radius: 8px;
  border-width: 2px;
  box-shadow: 0 8px 22px rgba(17, 16, 14, .18);
}
.photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}
.photo.contain {
  background: #1f1a17;
}
.photo.contain img {
  object-fit: contain;
}
.cap {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 13px;
  color: var(--ink2);
  margin-top: 10px;
  letter-spacing: .04em;
}
.dark .cap {
  color: #9b8b7c;
}
/* FULL-BLEED IMAGE SLIDE */
.bleed {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.bleed img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.bleed .scrim {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(26, 21, 18, .86) 0%, rgba(26, 21, 18, .30) 42%, rgba(26, 21, 18, .55) 100%);
}
.onbleed {
  position: relative;
  z-index: 1;
}
/* QUOTE */
.pull {
  font-size: clamp(21px, 5.99vw, 46px);
  font-style: italic;
  line-height: 1.22;
  color: var(--ink);
  max-width: 1040px;
}
.dark .pull {
  color: #f3ece4;
}
.pull .by {
  display: block;
  font-size: 20px;
  font-style: normal;
  font-family: "SF Mono", Menlo, monospace;
  color: var(--muted);
  margin-top: 20px;
}
.dark .pull .by {
  color: #b8a896;
}
/* CLOSE */
.cta-foot {
  margin-top: auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.cta-foot .ps {
  font-style: italic;
  font-size: 20px;
  color: var(--accent2);
  max-width: 760px;
}
.cta-foot .handle {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 16px;
  color: #9b8b7c;
}
h1, h2, .def .word, .divider .pt, .pull {
  font-family: Georgia, "Times New Roman", serif;
}
.redbg .kicker, .redbg .steplabel {
  color: var(--bad);
}
.greenbg .kicker, .greenbg .steplabel {
  color: var(--good);
}
.note, .sub, .def .body, .arow .txt, .amend, .scard .txt {
  color: #2D2923;
}
.dark .note, .dark .sub {
  color: #E6D6C2;
}
.hero .huge, .huge {
  font-weight: 900;
  letter-spacing: -1.8px;
}
.steptag, .tagpill {
  border-radius: 0;
  font-weight: 900;
  box-shadow: 0 6px 16px rgba(17, 16, 14, .12);
}

.node, .amend, .aicard, .lstep, .tnode, .scard, .bigrow, .rung, .pblock, .pane {
  border-radius: 8px;
  box-shadow: 0 4px 14px rgba(17, 16, 14, .08);
}
.dark .photo {
  border-color: var(--gold);
}
.pane.collp .tag {
  color: var(--good);
}
.pane.tribep .tag {
  color: var(--bad);
}
.bigrow.head .cell {
  background: var(--ink);
  color: var(--gold);
  font-weight: 900;
}
.redbg .huge {
  color: var(--sub-dark) !important;
}
.greenbg .huge {
  color: #123F22 !important;
}
.dark .foot {
  background: rgba(8, 8, 6, .8);
  color: #B8AEA0;
}
.brandfoot, .slidenum, .cap {
  font-weight: 700;
}
/* mechanism-aware utility classes */
.king-text {
  color: var(--kingdark) !important;
}
.dark .king-text {
  color: var(--king) !important;
}
.law-text {
  color: var(--law) !important;
}
.dark .law-text {
  color: var(--law2) !important;
}
.subversion-text {
  color: var(--bad) !important;
}
.up-text {
  color: var(--good) !important;
}
/* comparison bullets inside King/Law panes */
.pane .plist {
  list-style: none;
  margin: 6px 0 12px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 1;
}
.pane .plist li {
  font-size: 19px;
  line-height: 1.34;
  padding-left: 22px;
  position: relative;
  color: inherit;
  font-weight: 600;
}
.pane .plist li:before {
  content: "\25B8";
  position: absolute;
  left: 0;
  opacity: .65;
}
.pane.kingp, .pane.lawp, .pane.tribep, .pane.collp {
  border-width: 2px;
  border-top-width: 10px;
}
.steptag, .tagpill, .missing {
  box-shadow: none;
}
/* === MECHANISM CLASSES become real slide-level signals (colored top edge) === */
.slide.mechanism-king {
  border-top-color: var(--king);
}
.slide.mechanism-good {
  border-top-color: var(--good);
}
.slide.mechanism-bad {
  border-top-color: var(--bad);
}
.slide.mechanism-law {
  border-top-color: var(--law);
}
.slide.mechanism-subversion {
  border-top-color: var(--bad);
}
.slide.mechanism-up {
  border-top-color: var(--good);
}
.slide.mechanism-erase {
  border-top-color: var(--erase);
}
/* King + Law together (the operating-system slides): split bronze/slate bar */
.slide.mechanism-king.mechanism-law {
  border-top-color: transparent;
}
.slide.mechanism-good.mechanism-bad {
  border-top-color: transparent;
}
.slide.mechanism-king.mechanism-law::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 6px;
  z-index: 6;
  background: linear-gradient(90deg, var(--king) 0%, var(--king) 50%, var(--law) 50%, var(--law) 100%);
}
.slide.mechanism-good.mechanism-bad::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 6px;
  z-index: 6;
  background: linear-gradient(90deg, var(--good) 0%, var(--good) 50%, var(--bad) 50%, var(--bad) 100%);
}
.built-visual {
  position: relative;
  overflow: visible;
  border-radius: 14px;
  border: 1px solid rgba(17, 16, 14, .18);
  box-shadow: 0 14px 34px rgba(40, 32, 26, .18);
  background: #e6e2d8;
  min-height: 230px;
  width: 100%;
}
.built-visual.tall {
  min-height: 500px;
}
.built-visual.mid {
  min-height: 48px;
}
.built-visual.short {
  min-height: 180px;
}
.built-visual.wide {
  min-height: 270px;
}
.dark .built-visual {
  background: #151512;
  border-color: rgba(255, 255, 255, .14);
  box-shadow: none;
}
.measure-viz {
  background: linear-gradient(180deg, #edf2f2, #d2d7d5);
}
.os-machine {
  background:
    radial-gradient(circle at 50% 50%, rgba(13, 59, 76, .16), transparent 34%), linear-gradient(135deg, #f7f1e6, #d8d3c8);
}
.viz-label {
  position: absolute;
  top: 16px;
  left: 18px;
  font-family: "SF Mono", Menlo, monospace;
  font-size: 14px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(17, 16, 14, .88);
  z-index: 4;
}
.viz-label.mirror{
	  position: absolute;
  top: 16px;
	  right: 18px;
  left: auto;
}
.dark .viz-label {
  color: rgba(243, 236, 228, .58);
}
.os-grid {
  position: absolute;
  inset: 72px 16px 58px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-rows: 1fr;
  gap: 16px;
}
button.os-node, .os-node {
  border: 2px solid rgba(17, 16, 14, .18);
  background: rgba(255, 255, 255, .55);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 21px;
  font-weight: 900;
}
.dark .os-node,.dark button.os-node {
	  background: var(--grey-bg);

}
button.os-node.king, .os-node.king {
  border-top: 8px solid var(--king);
}
button.os-node.law,.os-node.law {
  border-top: 8px solid var(--law);
}
button.os-node.bad, .os-node.bad {
  border-top: 8px solid var(--bad);
}
.os-node.good {
  border-top: 8px solid var(--good);
}
button.os-node.erase, .os-node.erase {
  border-top: 8px solid var(--erase);
}
.os-core {
  position: absolute;
  inset: 95% auto auto 50%;
  transform: translate(-50%, -100%);
  width: 100%;
  height: 48px;
  border-radius: 10px;
  background: var(--ink);
  color: var(--paper);
  display: flex;
  align-items: center;
  justify-content: space-around;
  text-align: center;
  align-self: stretch;
  font-size: 22px;
  font-weight: 900;
  z-index: 3;
  box-shadow: 0 12px 28px rgba(0, 0, 0, .24);
}
.os-core.mirror{
	background: var(--erase);
	 position: absolute;
  inset: 100% auto auto 45%;
  transform: translate(-50%, -100%);
	rotate:90deg;
	 
}
.viz-caption {
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 16px;
  font-family: "SF Mono", Menlo, monospace;
  font-size: 12px;
  letter-spacing: .04em;
  color: rgba(17, 16, 14, .64);
  z-index: 4;
}
.dark .viz-caption {
  color: rgba(243, 236, 228, .64);
}
.visual-pair {
  display: grid;
  grid-template-columns: 1.1fr .9fr ;
  gap: 28px;
  flex: 1;
  align-items: center;
}
.doc-row {
  position: relative;
  display: flex;
  align-items: center;
	overflow: scroll;
  gap: 14px;
}
.mini-doc {
  flex: 1;
  height: 210px;
  border-radius: 8px;
  background: var(--bg2);
  border: 2px solid rgba(17, 16, 14, .18);
  box-shadow: 0 10px 20px rgba(0, 0, 0, .12);
  padding: 22px 18px;
  position: relative;
}
.mini-doc::before, .mini-doc::after {
  content: "";
  display: block;
  height: 8px;
  border-radius: 20px;
  background: rgba(17, 16, 14, .16);
  margin-bottom: 14px;
}
.mini-doc::after {
  width: 68%;
  margin-top: 16px;
}
.seal {
  position: absolute;
  right: 16px;
  bottom: 16px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 5px solid var(--bad);
  opacity: .78;
}
.seal.king {
  border-color: var(--king);
}
.seal.law {
  border-color: var(--law);
}
.seal.bad {
  border-color: var(--bad);
}
.mini-arrow {
  font-size: 34px;
  font-weight: 900;
  color: var(--bad);
}
.gov-building {
  position: absolute;
  left: -24px;
  bottom: 64px;
  width: 180px;
  height: 90px;
  border-bottom: 18px solid var(--kingdark);
  z-index: 1;
}
.gov-building::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -42px;
  border-left: 90px solid transparent;
  border-right: 90px solid transparent;
  border-bottom: 42px solid var(--king);
}
.column-set {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  height: 100%;
  padding-top: 10px;
}
.column-set span {
  background: #7a5a1e;
}
.beam {
  position: absolute;
  left: 44px;
  right: 44px;
  top: 48px;
  height: 24px;
  background: var(--law2);
  border-radius: 6px;
  box-shadow: 0 12px 0 rgba(13, 59, 76, .14);
}
.beam::after {
  content: "";
  position: absolute;
  inset: 4px 12px;
  background: repeating-linear-gradient(90deg, #fff 0, #fff 2px, transparent 2px, transparent 28px);
  opacity: .72;
}
.citizen-tool {
  position: absolute;
  right: -48px;
  bottom: 46px;
  width: 150px;
  height: 120px;
  z-index: 3;
}
.citizen-tool .tool {
  position: absolute;
  top: 36px;
  left: 6px;
  width: 132px;
  height: 10px;
  transform: rotate(-24deg);
  background: var(--law);
  border-radius: 20px;
}
.citizen-tool .head {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--ink);
  margin: 0 auto 8px;
}
.citizen-tool .body {
  width: 78px;
  height: 70px;
  margin: auto;
  background: var(--good);
  border-radius: 18px 18px 6px 6px;
}
.trust-router {
  background: linear-gradient(135deg, #f6ead3, #d7edf0);
}
.router-person {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 96px;
  height: 130px;
  transform: translate(-50%, -48%);
}
.router-person::before {
  content: "";
  display: block;
  width: 58px;
  height: 58px;
  background: var(--ink);
  border-radius: 50%;
  margin: 0 auto 10px;
}
.router-person::after {
  content: "";
  display: block;
  height: 72px;
  background: var(--king);
  border-radius: 22px 22px 8px 8px;
}
.router-node {
  position: absolute;
  width: 118px;
  height: 58px;
  border-radius: 8px;
  background: #fff8e9;
  border: 2px solid var(--king);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 16px;
  font-weight: 900;
}
.router-node.law {
  border-color: var(--law);
  color: var(--law);
}
.router-node.a {
  left: 42px;
  top: 80px;
}
.router-node.b {
  right: 42px;
  top: 80px;
}
.router-node.c {
  left: 42px;
  bottom: 76px;
}
.router-node.d {
  right: 42px;
  bottom: 76px;
}
.router-line {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 190px;
  height: 4px;
  background: var(--king);
  transform-origin: left center;
  opacity: .75;
}
.router-line.l1 {
  transform: rotate(-145deg);
}
.router-line.l2 {
  transform: rotate(-35deg);
}
.router-line.l3 {
  transform: rotate(145deg);
  background: var(--law);
}
.router-line.l4 {
  transform: rotate(35deg);
  background: var(--law);
}
.stage-failure {
  background: radial-gradient(circle at 50% 90%, rgba(139, 30, 30, .38), transparent 42%), #080806;
}
.podium {
  position: absolute;
  left: 50%;
  top: 135px;
  width: 170px;
  height: 170px;
  transform: translateX(-50%);
  background: linear-gradient(180deg, #4b3420, #1e1611);
  clip-path: polygon(35% 0, 65% 0, 76% 100%, 24% 100%);
  box-shadow: 0 30px 55px rgba(0, 0, 0, .6);
}
.loyalty-rays {
  position: absolute;
  left: 50%;
  bottom: 86px;
  width: 700px;
  height: 300px;
  transform: translateX(-50%);
  background: conic-gradient(from 210deg at 50% 0, transparent 0 16deg, rgba(184, 134, 11, .42) 16deg 20deg, transparent 20deg 38deg, rgba(184, 134, 11, .42) 38deg 42deg, transparent 42deg 72deg);
  opacity: .7;
}
.snap-line {
  position: absolute;
  left: 56%;
  top: 112px;
  width: 230px;
  height: 8px;
  background: var(--law2);
  transform: rotate(-12deg);
}
.snap-line::after {
  content: "";
  position: absolute;
  left: 104px;
  top: -12px;
  width: 30px;
  height: 30px;
  background: var(--bad);
  clip-path: polygon(0 0, 100% 50%, 0 100%, 35% 50%);
}
.culture-permission {
  background: linear-gradient(135deg, #f7f1e6, #e6d3d0);
}
.poster-form {
  position: absolute;
  inset: 42px 26px 34px;
  background: #fff7e8;
  border: 2px solid rgba(17, 16, 14, .16);
  border-top: 12px solid var(--bad);
  border-radius: 8px;
  padding: 32px 24px;
}
.poster-form .circle {
  width: 86px;
  height: 86px;
  border-radius: 50%;
  background: var(--king);
  margin: 0 auto 28px;
}
.poster-form .line {
  height: 14px;
  border-radius: 20px;
  background: rgba(17, 16, 14, .16);
  margin: 14px auto;
}
.poster-form .line:nth-child(3) {
  width: 78%;
}
.poster-form .line:nth-child(4) {
  width: 58%;
}
.reframe-viz {
  background: linear-gradient(135deg, #e9f2ef, #d7edf0);
}
.reframe-path {
  position: absolute;
  inset: 74px 28px 70px;
  display: grid;
  grid-template-columns: 1fr 34px 1fr 34px 1fr;
  align-items: center;
  gap: 10px;
}
.reframe-box {
  min-height: 108px;
  border-radius: 10px;
  background: #fff8e9;
  border: 2px solid var(--law);
  color: var(--law);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 12px;
  font-size: 20px;
  font-weight: 900;
}
.reframe-path .arrow {
  font-size: 34px;
  color: var(--good);
  font-weight: 900;
}
.missing-origin-bg {
  position: absolute;
  right: 58px;
  top: 72px;
  width: 520px; max-width: 100%;
  height: 220px;
  opacity: .42;
}
.missing-origin-bg .mini-timeline {
  position: absolute;
  left: 0;
  right: 0;
  top: 95px;
  height: 10px;
  background: var(--erase);
}
.missing-origin-bg .hole {
  position: absolute;
  left: 210px;
  top: 54px;
  width: 120px;
  height: 90px;
  background: var(--bg2);
  border: 3px dashed var(--bad);
  box-shadow: 0 0 0 12px rgba(139, 30, 30, .08);
  transform: rotate(-2deg);
}
.measure-unequal {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  padding: 96px 54px 58px;
  background: linear-gradient(135deg, #eff4f3, #dce3e2);
}
.measure-panel {
  position: relative;
  border-radius: 12px;
  background: rgba(255, 255, 255, .62);
  border: 2px solid rgba(17, 16, 14, .16);
}
.case-file {
  position: absolute;
  left: 50%;
  top: 52%;
  width: 118px;
  height: 148px;
  transform: translate(-50%, -50%);
  background: #fff8e9;
  border: 2px solid rgba(17, 16, 14, .2);
  border-radius: 8px;
}
.case-file::before {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  top: 32px;
  height: 10px;
  border-radius: 20px;
  background: rgba(17, 16, 14, .16);
  box-shadow: 0 28px 0 rgba(17, 16, 14, .12), 0 56px 0 rgba(17, 16, 14, .10);
}
.ruler {
  position: absolute;
  left: 28px;
  right: 28px;
  top: 28px;
  height: 18px;
  background: var(--law);
  border-radius: 4px;
}
.ruler.bad {
  background: var(--bad);
  transform: rotate(8deg) scaleX(.72);
  transform-origin: left center;
}
.ruler::after {
  content: "";
  position: absolute;
  inset: 3px 7px;
  background: repeating-linear-gradient(90deg, #fff 0 2px, transparent 2px 18px);
  opacity: .8;
}
.role-card {
  position: relative;
  padding-top: 78px;
}
.role-icon {
  width: 70px;
  height: 70px;
  margin: 0 auto 18px;
  border-radius: 14px;
  border: 4px solid var(--law);
  position: relative;
}
.role-icon.book::before {
  content: "";
  position: absolute;
  left: 18px;
  top: 12px;
  width: 26px;
  height: 40px;
  border-left: 5px solid var(--law);
  border-right: 5px solid var(--law);
}
.role-icon.voice::before {
  content: "";
  position: absolute;
  left: 15px;
  top: 22px;
  width: 36px;
  height: 20px;
  background: var(--law);
  clip-path: polygon(0 30%, 58% 30%, 100% 0, 100% 100%, 58% 70%, 0 70%);
}
.role-icon.field::before {
  content: "";
  position: absolute;
  inset: 14px;
  border: 4px solid var(--law);
}
.timeline-hole {
  background: linear-gradient(135deg, #f4dad7, #e7c7c2);
}
.timeline-hole .timeline {
  margin-top: 160px;
}
.torn-missing {
  margin: 30px auto 0;
  width: 520px; max-width: 100%;
  min-height: 88px;
  border: 4px dashed var(--bad);
  background: rgba(255, 248, 233, .7);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bad);
  font-size: 30px;
  font-weight: 900;
  transform: rotate(-1deg);
  box-shadow: 0 0 0 16px rgba(139, 30, 30, .08);
}
.theft-chain {
  display: grid;
  grid-template-columns: 1fr 46px 1fr 46px 1fr;
  gap: 12px;
  align-items: center;
  margin-top: 30px;
}
.theft-box {
  min-height: 120px;
  border-radius: 10px;
  background: #fff8e9;
  border-top: 12px solid var(--bad);
  padding: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 25px;
  font-weight: 900;
}
.up-machine {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 22px;
  margin-top: 28px;
}
.lever-card {
  min-height: 230px;
  border-radius: 12px;
  background: #f8f4ea;
  border: 2px solid rgba(17, 16, 14, .14);
  border-top: 14px solid var(--good);
  padding: 26px;
  position: relative;
}
.controlsec .lever {
  width: 18px;
  height: 112px;
  border-radius: 20px;
  background: var(--ink);
  transform: rotate(22deg);
  margin: 20px auto 0;
  transform-origin: bottom center;
}
.lever::before {
  content: "";
  position: absolute;
  top: -24px;
  left: -16px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: var(--good);
}
.selector {
  position: relative;
  height: 310px;
  margin-top: 20px;
}
.selector-center {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 300px;
  height: 92px;
  border-radius: 14px;
  background: var(--law);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 28px;
  font-weight: 900;
}
.selector-chip {
  position: absolute;
  width: 175px;
  height: 54px;
  border-radius: 100px;
  background: var(--lawbg);
  color: var(--law);
  border: 2px solid var(--law);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
}
.selector-chip.a {
  left: 65px;
  top: 0;
}
.selector-chip.b {
  right: 65px;
  top: 0;
}
.selector-chip.c {
  left: 0;
  top: 128px;
}
.selector-chip.d {
  right: 0;
  top: 128px;
}
.selector-chip.e {
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.tool-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-top: 26px;
}
.tool-card {
  min-height: 95px;
  border-radius: 10px;
  background: var(--lawbg);
  border: 2px solid var(--law);
  color: var(--law);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 14px;
  font-size: 23px;
  font-weight: 900;
}
.system-compare {
  margin: 22px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
}
.system-card {
  min-height: 230px;
  border-radius: 12px;
  background: var(--bg3);
  border: 3px solid rgba(17, 16, 14, .16);
  border-top: 14px solid var(--law);
  padding: 22px;
  box-shadow: 0 12px 28px rgba(40, 32, 26, .14);
}
.system-card.controlled {
  border-top-color: var(--bad);
  background: #F8E4DE;
}
.system-title {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 15px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--law);
  margin-bottom: 14px;
}
.controlled .system-title {
  color: var(--bad);
}
.info-row {
  display: grid;
  grid-template-columns: 160px 1fr;
  gap: 14px;
  padding: 10px 0;
  border-top: 1px solid rgba(17, 16, 14, .12);
}
.info-row:first-of-type {
  border-top: 0;
}
.info-label {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--muted);
}
.info-main {
  font-size: 23px;
  line-height: 1.1;
  font-weight: 900;
}
.info-sub {
  display: block;
  margin-top: 4px;
  font-size: 15px;
  line-height: 1.25;
  color: var(--muted);
  font-weight: 700;
}
.asymmetry-board {
  position: relative;
  margin-top: 28px;
  min-height: 360px;
  border-radius: 14px;
  background:
    linear-gradient(90deg, rgba(217, 240, 242, .72), rgba(246, 218, 218, .72)), var(--bg2);
  border: 3px solid rgba(17, 16, 14, .14);
  overflow: hidden;
  padding: 34px;
}
.market-field, .control-field {
  position: absolute;
  top: 34px;
  bottom: 34px;
  width: 38%;
  border-radius: 12px;
  border: 3px solid;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 24px;
  font-size: 30px;
  font-weight: 900;
}
.market-field {
  left: 34px;
  border-color: var(--law);
  color: var(--law);
  background: rgba(255, 255, 255, .56);
}
.control-field {
  right: 34px;
  border-color: var(--bad);
  color: var(--bad);
  background: rgba(255, 255, 255, .42);
}
.purchase-arrow {
  position: absolute;
  left: 40%;
  right: 40%;
  top: 50%;
  height: 10px;
  transform: translateY(-50%);
  background: var(--bad);
}
.purchase-arrow::after {
  content: "";
  position: absolute;
  right: -22px;
  top: -15px;
  border-left: 28px solid var(--bad);
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
}
.asymmetry-note {
  position: absolute;
  left: 50%;
  bottom: 34px;
  width: 520px; max-width: 100%;
  transform: translateX(-50%);
  background: var(--ink);
  color: #f3ece4;
  border-radius: 10px;
  padding: 16px 20px;
  text-align: center;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 900;
}
.cap {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 13px;
  color: var(--ink2);
  margin-top: 10px;
  letter-spacing: .04em;
}
.dark .cap {
  color: #9b8b7c;
}
/* FULL-BLEED IMAGE SLIDE */
.bleed {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.bleed img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.bleed .scrim {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(26, 21, 18, .86) 0%, rgba(26, 21, 18, .30) 42%, rgba(26, 21, 18, .55) 100%);
}
.onbleed {
  display: flex;
  flex: 1;
  flex-direction: column;
  position: relative;
  z-index: 1;
}
.transfer-viz {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 42px 26px 28px;
  background: linear-gradient(135deg, #f4ead8, #efe1df);
}
.transfer-box {
  flex: 1;
  min-height: 145px;
  border-radius: 10px;
  border: 3px solid rgba(17, 16, 14, .14);
  background: #fff8e9;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 14px;
  font-size: 24px;
  font-weight: 900;
}
.transfer-box:nth-of-type(2) {
  border-color: var(--king);
}
.transfer-box:nth-of-type(3) {
  border-color: var(--bad);
  background: #f5d8d5;
  color: #651414;
}
.transfer-arrow {
  font-size: 34px;
  color: var(--bad);
  font-weight: 900;
}
.banner-capture {
  background: radial-gradient(circle at 50% 100%, rgba(139, 30, 30, .34), transparent 42%), #171512;
}
.crowd-dots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100px;
  background: radial-gradient(circle, #5b5248 0 5px, transparent 6px);
  background-size: 28px 24px;
  opacity: .75;
}
.banner {
  position: absolute;
  left: 120px;
  right: 120px;
  top: 82px;
  height: 86px;
  background: #f3ece4;
  color: var(--ink);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(18px, 5.208vw, 40px);
  font-weight: 900;
  box-shadow: 0 18px 32px rgba(0, 0, 0, .35);
}
.capture-arrow {
  position: absolute;
  left: 50%;
  top: 188px;
  transform: translateX(-50%);
  color: var(--bad);
  font-size: clamp(29px, 8.333vw, 64px);
  font-weight: 900;
}
.evidence-board {
  background: #201d19;
}
.pin-card {
  position: absolute;
  background: #fff5df;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, .25);
  box-shadow: 0 12px 24px rgba(0, 0, 0, .35);
}
.pin-card.a {
  left: 48px;
  top: 72px;
  width: 170px;
  height: 130px;
  transform: rotate(-4deg);
}
.pin-card.b {
  right: 46px;
  top: 116px;
  width: 185px;
  height: 150px;
  transform: rotate(5deg);
}
.pin-card.c {
  left: 88px;
  bottom: 62px;
  width: 230px;
  height: 92px;
  transform: rotate(2deg);
}
.pin-card::before {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  top: 26px;
  height: 8px;
  border-radius: 20px;
  background: rgba(17, 16, 14, .22);
  box-shadow: 0 22px 0 rgba(17, 16, 14, .16), 0 44px 0 rgba(17, 16, 14, .12);
}
.wave {
  position: absolute;
  left: 60px;
  right: 60px;
  top: 245px;
  height: 54px;
  background: repeating-linear-gradient(90deg, var(--law2) 0 4px, transparent 4px 14px);
  clip-path: polygon(0 45%, 7% 20%, 13% 70%, 20% 30%, 27% 60%, 35% 15%, 43% 80%, 52% 28%, 61% 62%, 70% 22%, 78% 76%, 88% 38%, 100% 50%, 100% 100%, 0 100%);
  opacity: .9;
}
.red-thread {
  position: absolute;
  left: 110px;
  right: 110px;
  top: 200px;
  height: 3px;
  background: var(--bad);
  transform: rotate(8deg);
  box-shadow: 70px 76px 0 var(--bad), 155px -86px 0 var(--bad);
}
.down-machine {
  background: linear-gradient(180deg, #2b2825, #11100e);
}
.machine-rung {
  position: absolute;
  left: 36px;
  right: 36px;
  height: 36px;
  border-radius: 8px;
  background: #f3ece4;
  color: var(--ink);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "SF Mono", Menlo, monospace;
  font-size: 13px;
  font-weight: 900;
}
.machine-rung:nth-child(2) {
  top: 72px;
}
.machine-rung:nth-child(3) {
  top: 124px;
}
.machine-rung:nth-child(4) {
  top: 176px;
}
.machine-rung:nth-child(5) {
  top: 228px;
}
.machine-rung:nth-child(6) {
  top: 280px;
}
.machine-rung:nth-child(7) {
  top: 332px;
  background: #f1c2ba;
  color: #651414;
}
.machine-arrow {
  position: absolute;
  left: 50%;
  top: 84px;
  bottom: 76px;
  width: 8px;
  background: var(--bad);
  transform: translateX(-50%);
  opacity: .75;
}
.icon-viz {
  display: flex;
  align-content: center;
  align-items: stretch;
  justify-content: center;
  background: var(--bg2);
  flex-wrap: wrap;
  margin: 8px 0;
  width: auto;
  height: auto;
}
.icon-shape {
  width: 92px;
  height: 92px;
  position: relative;
  margin: 24px;
  z-index: 0;
}
.icon-text {
  position: absolute;
  text-transform: uppercase;
  inset: 0% auto auto 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  color: var(--ink);
  justify-content: center;
  text-align: center;
  font-size: 22px;
  -webkit-text-stroke: 1px var(--bg2);
  font-weight: 900;
  z-index: 3;
}
.shield {
  background: var(--law);
  clip-path: polygon(50% 0, 88% 16%, 82% 68%, 50% 100%, 18% 68%, 12% 16%);
}
.gavel::before {
  content: "";
  position: absolute;
  width: 84px;
  height: 18px;
  background: var(--bad);
  transform: rotate(-35deg);
  top: 28px;
  left: 4px;
  border-radius: 5px;
}
.gavel::after {
  content: "";
  position: absolute;
  width: 20px;
  height: 86px;
  background: var(--bad);
  transform: rotate(-35deg);
  top: 18px;
  left: 58px;
  border-radius: 5px;
}
.star {
  background: var(--good);
  clip-path: polygon(50% 0, 62% 35%, 98% 35%, 68% 56%, 80% 92%, 50% 70%, 20% 92%, 32% 56%, 2% 35%, 38% 35%);
}
.law-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-top: 2px;
}
.law-item {
  min-height: 86px;
  padding: 13px 15px;
  border: 2px solid rgba(22, 32, 42, .16);
  background: rgba(255, 255, 255, .58);
  display: grid;
  grid-template-columns: 172px 1fr;
  gap: 12px;
  align-items: start;
}
.law-name {
  font-size: 23px;
  line-height: 1.03;
  font-weight: 900;
}
.law-desc {
  font-size: 21px;
  line-height: 1.12;
  font-weight: 100;
}
.law-list.compact .law-item {
  min-height: 74px;
}
.failure {
  margin-top: 18px;
  border-left: 5px solid var(--bad);
  border-radius: 8px;
  padding: 12px 18px;
  font-size: 18px;
  color: var(--bad);
  background-color: var(--redbg);
}
/* === HOW TO WIN INSERT === */
.howwin .win-split {
  display: flex;
  align-items: stretch;
  gap: 24px;
  width: 100%;
}
.howwin .win-arrow, .howwin .pipe-arrow, .howwin .junction-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(21px, 5.99vw, 46px);
  font-weight: 900;
  color: var(--accent);
  min-width: 44px;
}
.howwin .win-card, .howwin .pipe-node, .howwin .junction-card {
  background: var(--paper);
  border: 2px solid var(--line);
  border-top: 10px solid var(--accent);
  padding: 12px 12px 12px 24px;
	margin: 12px;
  border-radius: 8px;
  box-shadow: 0 6px 18px rgba(17, 16, 14, .10);
  flex: 1;
}
.howwin .bad-card {
  background: #F1E2DD;
  border-color: var(--bad);
  border-top-color: var(--bad);
  color: var(--sub-dark);
}
.howwin .good-card {
  background: var(--greenbg);
  border-color: var(--good);
  border-top-color: var(--good);
  color: var(--good-dark);
}
.howwin .win-label, .howwin .pipe-title {
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 14px;
  font-weight: 100;
  color: var(--accent);
  margin-bottom: 12px;
}
.howwin .bad-card .win-label {
  color: var(--bad);
}
.howwin .good-card .win-label {
  color: var(--good-dark);
}
.howwin .win-main {
  font-size: 34px;
  line-height: 1.08;
  font-weight: 900;
  margin-bottom: 12px;
}
.howwin .win-sub, .howwin .pipe-sub {
  font-size: 24px;
  line-height: 1.32;
  color: var(--ink);
}
.dark.howwin .win-win {
  color: var(--good-dark);
}
.howwin .pipeline-board {
  display: flex;
  align-items: stretch;
  gap: 12px;
  margin-top: 34px;
  width: 100%;
}
.howwin .pipe-node {
  min-height: 190px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.howwin .pipe-node.king {
  border-top-color: var(--king);
  background: var(--kingbg);
}
.howwin .pipe-node.law {
  border-top-color: var(--law);
  background: var(--lawbg);
}
.howwin .pipe-node.good {
  border-top-color: var(--good);
  background: var(--greenbg);
}
.howwin .quote-stack {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
  margin-top: 32px;
}
.howwin .quote-card {
  background: var(--paper);
  border-left: 12px solid var(--law);
  padding: 24px 28px;
  font-size: 34px;
  line-height: 1.18;
  font-weight: 800;
  box-shadow: 0 6px 18px rgba(17, 16, 14, .10);
}
.howwin .win-grid.four {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 16px;
}
.howwin .win-grid.four .win-card {
  min-height: 120px;
}
.howwin .big-diagram .node {
  font-size: 26px;
  min-height: 126px;
  max-width: 250px;
}
.howwin .test-board {
  margin: 24px 64px;
  background: var(--bg);
  border: 2px solid var(--law);
  border-top: 12px solid var(--law);
  border-radius: 12px;
  padding: 48px;
  box-shadow: 0 6px 18px rgba(17, 16, 14, .10);
}
.howwin .test-board.dark {border: 2px solid var(--border-grey);
  border-top: 12px solid var(--border-grey); background: rgb(from var(--bg-color) r g b / 0.3);	;
}
.howwin .test-question {
  font-size: 32px;
  line-height: 1.1;
  font-weight: normal;
  color: var(--law);
  margin-bottom: 20px;
	text-align: center;
}
.howwin .test-board.dark .test-question {color: var(--greenbg) }
.howwin .test-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 14px;
  margin-top: 12px;
}
.howwin .test-board.dark .test-row {color: var(--bg-color) }
.howwin .test-row span {
  background: var(--erase-muted);
  border: 1px solid var(--law);
  padding: 18px;
  font-size: 22px;
  font-weight: 800;
  line-height: 1.25;
  border-radius: 8px;
}
.howwin .junction-board {
  display: grid;
  grid-template-columns: 1fr 1fr 70px 1.2fr;
  gap: 18px;
  align-items: stretch;
  margin-top: 28px;
}
.howwin .junction-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 230px;
}
.howwin .junction-arrow {
  font-size: clamp(24px, 7.031vw, 54px);
}
/* === ANCIENT MEDIA STRATEGY INSERT === */
.strategy .strategy-board {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
  margin-top: 26px;
  width: 100%;
}
.strategy .strategy-board.three {
  grid-template-columns: 1fr 1fr 1fr;
}
.strategy .strategy-card {
  background: var(--paper);
  border: 2px solid var(--line);
  border-top: 12px solid var(--accent);
  border-radius: 14px;
  padding: 22px 24px;
  box-shadow: 0 6px 18px rgba(17, 16, 14, .10);
  min-height: 190px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: var(--ink)
}
.strategy .strategy-card.bad {
  background: #F1E2DD;
  border-color: var(--bad);
  border-top-color: var(--bad);
  color: var(--sub-dark);
}
.strategy .strategy-card.good {
  background: var(--greenbg);
  border-color: var(--good);
  border-top-color: var(--good);
  color: var(--good-dark);
}
.strategy .strategy-card.law {
  background: var(--lawbg);
  border-color: var(--law);
  border-top-color: var(--law);
  color: var(--law);
}
.strategy .strategy-card.king {
  background: var(--kingbg);
  border-color: var(--king);
  border-top-color: var(--king);
  color: var(--kingdark);
}
.strategy .strategy-label {
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 18px;
  font-weight: 900;
  margin-bottom: 12px;
  color: var(--ink);
}
.strategy .strategy-card.bad .strategy-label {
  color: var(--bad);
}
.strategy .strategy-card.good .strategy-label {
  color: var(--good);
}
.strategy .strategy-card.law .strategy-label {
  color: var(--law);
}
.strategy .strategy-card.king .strategy-label {
  color: var(--kingdark);
}
.strategy .strategy-main {
  font-size: 34px;
  line-height: 1.08;
  font-weight: 900;
  margin-bottom: 12px;
}
.strategy .strategy-sub {
  font-size: 24px;
  line-height: 1.28;
  color: var(--ink2);
}
.strategy .court-board {
  display: grid;
  grid-template-columns: 1fr 90px 1fr;
  gap: 20px;
  align-items: center;
  margin-top: 30px;
	overflow: scroll;
}
.strategy .court-arrow {
  font-size: clamp(29px, 8.333vw, 64px);
  font-weight: 900;
  color: var(--accent);
  text-align: center;
}
.strategy .court-frame {
  background: var(--paper);
  border: 2px solid var(--line);
  border-radius: 14px;
  padding: 26px;
  min-height: 300px;
  box-shadow: 0 6px 18px rgba(17, 16, 14, .10);
}
.strategy .court-title {
  font-size: 36px;
  font-weight: 900;
  line-height: 1.05;
  margin-bottom: 16px;
  color: var(--ink);
}
.strategy .court-lines {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}
.strategy .court-line {
  font-size: 26px;
  line-height: 1.18;
  font-weight: 800;
  padding: 12px 14px;
  border-left: 8px solid var(--warn);
  background: #F7F2EA;
  border-radius: 8px;
}
.strategy .court-line.bad {
  border-left-color: var(--bad);
  background: #F1E2DD;
  color: var(--sub-dark);
}
.strategy .court-line.law {
  border-left-color: var(--law);
  background: var(--lawbg);
  color: var(--law);
}
.strategy .court-line.good {
  border-left-color: var(--good);
  background: var(--greenbg);
  color: var(--good-dark);
}
.strategy .ladder-vs-court {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  margin-top: 22px;
  align-items: stretch;
}
 .ladder-box, .strategy .court-box {
  border: 2px solid var(--line);
  border-radius: 14px;
  padding: 24px;
  background: var(--paper);
  min-height: 360px;
  box-shadow: 0 6px 18px rgba(17, 16, 14, .10);
}
.strategy .ladder-box {
  border-top: 12px solid var(--king);
  background: var(--kingbg);
}
.strategy .court-box {
  border-top: 12px solid var(--law);
  background: var(--lawbg);
}
.strategy .rank-step {
  font-size: 24px;
  font-weight: normal;
  line-height: 1.08;
  padding: 8px 14px;
  margin: 8px 0;
  background: rgb(255,255,255,0.5);
  border: 1px solid rgba(0, 0, 0, .1);
  border-radius: 8px;
}
.strategy .score-grid {
  display: grid;
  grid-template-columns: 1.1fr 1.1fr 1.4fr;
  gap: 18px;
  margin-top: 24px;
}
.strategy .score-card {
  background: var(--paper);
  border: 2px solid var(--line);
  border-top: 10px solid var(--accent);
  border-radius: 12px;
  padding: 20px;
  min-height: 250px;
  box-shadow: 0 6px 18px rgba(17, 16, 14, .10);
}
.strategy .score-card .strategy-main {
  font-size: 31px;
}
.strategy .score-card .strategy-sub {
  font-size: 24px;
}
.strategy .playbook {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 12px;
  margin-top: 30px;
}
.strategy .play-step {
  background: var(--paper);
  border: 2px solid var(--line);
  border-top: 9px solid var(--accent);
  border-radius: 12px;
  padding: 18px 16px;
  min-height: 220px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  box-shadow: 0 6px 18px rgba(17, 16, 14, .10);
}
.dark.strategy .play-step {   background: var(--ink2);
}

.strategy .play-num {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 20px;
  font-weight: 900;
  color: var(--accent);
  margin-bottom: 12px;
}
.strategy .play-title {
  font-size: 27px;
  font-weight: 900;
  line-height: 1.05;
  margin-bottom: 10px;
}
.strategy .play-body {
  font-size: 22px;
  line-height: 1.22;
  color: var(--ink2);
}
.dark.strategy .play-body {
  font-size: 20px;
  line-height: 1.22;
  color: var(--bg2);
}

.strategy .ancient-ring {
  position: relative;
  height: 390px;
  margin-top: 18px;
}
.strategy .ring-core {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 160px;
  border-radius: 22px;
  background: var(--law);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 34px;
  font-weight: 900;
  line-height: 1.05;
  box-shadow: 0 12px 28px rgba(17, 16, 14, .22);
  text-transform: uppercase;
}
.strategy .ring-item {
  position: absolute;
  width: 450px;
  min-height: 125px;
  background: var(--paper);
  border: 2px solid var(--line);
  border-top: 9px solid var(--accent);
  border-radius: 12px;
  padding: 16px;
  box-shadow: 0 6px 18px rgba(17, 16, 14, .10);
}

.strategy .ring-item .strategy-label {
  font-size: 12px;
  margin-bottom: 8px;
}
.strategy .ring-item .strategy-sub {
  font-size: 21px;
  line-height: 1.18;
}
.strategy .ring-item.i1 {
  left: 0;
  top: 0
}
.strategy .ring-item.i2 {
  right: 0;
  top: 0
}
.strategy .ring-item.i3 {
  left: 0;
  bottom: 0
}
.strategy .ring-item.i4 {
  right: 0;
  bottom: 0
}
.strategy .weapon-board {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 22px;
  margin-top: 28px;
}
.strategy .weapon-card {
  background: var(--paper);
  border: 2px solid var(--line);
  border-top: 12px solid var(--law);
  border-radius: 14px;
  padding: 22px;
  min-height: 290px;
  box-shadow: 0 6px 18px rgba(17, 16, 14, .10);
}
.strategy .weapon-card.bad {
  border-top-color: var(--bad);
  background: #F1E2DD;
  color: var(--sub-dark);
}
.strategy .weapon-card.good {
  border-top-color: var(--good);
  background: var(--greenbg);
  color: var(--good-dark);
}
.strategy .weapon-title {
  font-size: 34px;
  line-height: 1.06;
  font-weight: 900;
  margin-bottom: 16px;
}
.strategy .weapon-text {
  font-size: 25px;
  line-height: 1.25;
  font-weight: 700;
}
/* Bridge slides added to preserve argument logic between existing blocks */
.bridge-slide .bridge-wrap {
  flex: 1;
  display: grid;
  grid-template-columns: 0.9fr 22px 1.1fr;
  gap: 34px;
  align-items: center;
  margin-top: 28px;
}
.bridge-title {
  font-weight: 900;
  font-size: clamp(28px, 8.073vw, 62px);
  line-height: 1.02;
  letter-spacing: -1.5px;
  color: var(--ink);
}
.dark .bridge-title {
  color: #fff;
}
.greenbg .bridge-title {
  color: #123F22;
}
.bridge-rail {
  width: 10px;
  height: 410px;
  background: linear-gradient(180deg, var(--king), var(--law), var(--good));
  border-radius: 12px;
  box-shadow: 0 0 0 1px rgba(17, 16, 14, .18);
}
.bridge-lines {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.bridge-line {
  font-size: 30px;
  line-height: 1.22;
  font-weight: 800;
	color: var(--ink);
  background: var(--bg);
  border-left: 10px solid var(--law);
  padding: 18px 22px;
  box-shadow: 0 10px 24px rgba(17, 16, 14, .12);
		border-radius: 0px 8px 8px 0px;

}
.dark .bridge-line {
  background: rgba(255, 248, 234, .08);
  color: #f3ece4;
  border-left-color: var(--gold);
  box-shadow: none;
}
.greenbg .bridge-line {
  background: rgba(255, 255, 255, .70);
  border-left-color: var(--good);
  color: #123F22;
}
/* === UNEQUAL LAW OPENING FRAMING === */
.unequal-law-open {
  border-top-color: var(--law);
  background: radial-gradient(rgba(79, 173, 255, .08) 1px, transparent 1px), var(--chrome);
  background-size: 42px 42px;
}
.unequal-hero {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 22px;
}
.unequal-title {
  font-size: clamp(34px, 9.896vw, 76px);
  line-height: .98;
  font-weight: 950;
  letter-spacing: -2px;
  color: #fff;
  max-width: 1120px;
}
.unequal-sub {
  font-size: 32px;
  line-height: 1.22;
  color: #e8dfd2;
  max-width: 1090px;
  font-weight: 750;
}
.receipt-strip {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 6px;
}
.receipt-card {
  min-height: 176px;
  border: 2px solid rgba(255, 255, 255, .18);
  padding: 18px 18px 16px;
  border-top: 12px solid var(--law);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .06);
}
.receipt-card.bad {
  border-top-color: var(--bad);
}
.receipt-card.erase {
  border-top-color: var(--erase-light);
}
.receipt-label {
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 13px;
  font-weight: 900;
  color: var(--gold);
  margin-bottom: 12px;
}
.receipt-main {
  font-size: 31px;
  line-height: 1.02;
  font-weight: 950;
  color: #fff;
  margin-bottom: 10px;
}
.receipt-copy {
  font-size: 22px;
  line-height: 1.25;
  color: var(--bg);
  font-weight: 650;
}
.unequal-line {
  font-size: 34px;
  line-height: 1.15;
  font-weight: 950;
  color: var(--gold);
  max-width: 1110px;
  border-left: 8px solid var(--law2);
  padding-left: 22px;
  margin-top: 6px;
}
.sourcefoot {
  position: absolute;
  left: 78px;
  right: 78px;
  bottom: 48px;
  font-family: "SF Mono", Menlo, monospace;
  font-size: 11px;
  line-height: 1.35;
  color: #a89c8b;
  max-width: 960px;
}
.sourcefoot.light {
  color: var(--muted);
}
.unequal-law-proof {
  border-top-color: var(--law);
  background-image: linear-gradient(rgba(13, 17, 76, .025) 1px, transparent 1px), linear-gradient(90deg, rgba(13, 17, 76, .025) 1px, transparent 1px);
  background-size: 44px 44px;
}
.law-lanes {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 8px;
  margin: 24px 0px;;
  width: 100%;
}
.lane-head {
  font-size: 24px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .08em;
  padding: 12px 16px;
	  border-radius: 4px;
  color: #fff;
}
.lane-head.world {
  background: var(--grey-bg);
}
.lane-head.israel {
  background: var(--law);
}
.lane-head.drift {
  background: var(--bad);
}
.lane-row {
  display: contents;
}

.lane-cell {
  padding: 8px 8px;
  border: 2px solid var(--line);
  background: var(--paper);
	  border-radius: 8px;

}
.lane-cell.world {
  border-top: 9px solid var(--erase);
  background: var(--paper);
}
.lane-cell.israel {
  border-top: 9px solid var(--law);
  background: var(--bg2);
}
.lane-cell.drift {
  border-top: 9px solid var(--bad);
  background: var(--redbg);
}
.lane-k {
  text-transform: uppercase;
  font-size: 13px;
  letter-spacing: .08em;
  font-weight: 950;
  color: var(--muted);
  margin-bottom: 8px;
}
.lane-t {
  font-size: 24px;
  line-height: 1.2;
  font-weight: 100;
  color: var(--ink);
}
.proof-bottom {
  margin-top: 22px;
  font-size: 34px;
  line-height: 1.12;
  font-weight: 950;
  color: var(--law);
  border-left: 8px solid var(--bad);
  padding-left: 20px;
  max-width: 1120px;
}
/* === SLIDE 2 · divergence layout: same input, opposite treatment === */
.unequal-law-proof .law-lanes.diverge {
  grid-template-columns: 1fr 124px 1fr;
  gap: 14px 10px;
  align-items: stretch;
}
.unequal-law-proof .law-lanes.diverge .lane-cell {
  min-height: 92px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.unequal-law-proof .lane-spine {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: var(--ink);
  color: var(--bg2);
  font-family: "SF Mono", Menlo, monospace;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
  line-height: 1.18;
  border-top: 9px solid var(--king);
}
.unequal-law-proof .lane-spine.head {
  background: transparent;
  color: var(--muted);
  border-top: none;
  font-size: 12px;
  letter-spacing: .14em;
}
.unequal-law-proof .lane-cell.escalate {
  background: var(--redbg);
}
.unequal-law-proof .esc-chain {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}
.unequal-law-proof .esc {
  font-size: 15px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .03em;
  color: #fff;
  background: var(--bad);
  padding: 5px 9px;
}
.unequal-law-proof .esc.climax {
  font-size: 18px;
  background: var(--sub-dark);
  padding: 6px 11px;
}
.unequal-law-proof .esc-arr {
  color: var(--bad);
  font-weight: 900;
  font-size: 18px;
}
.unequal-law-proof .proof-bottom.staged {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 14px;
  font-size: 30px;
  border-left: none;
  padding-left: 0;
}
.unequal-law-proof .proof-bottom.staged .beat {
  color: var(--law);
}
.unequal-law-proof .proof-bottom.staged .beat.punch {
  color: #fff;
  background: var(--bad);
  padding: 3px 14px;
}
.arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
  font-weight: 900;
  color: var(--king);
  padding: 0 4px;
}
.dark .arrow {
  color: var(--gold);
}
.table {
  display: flex;
  flex-direction: column;
  border: 2px solid #1B1712;
  box-shadow: 8px 8px 0 rgba(17, 16, 14, .14);
  background: rgb(from var(--paper) r g b / 0.3);
}
.table .row {

  border-bottom: 2px solid #1B1712;
}
.table .row:last-child {
  border-bottom: none;
}
.table .cell {
  padding: 12px 14px;
  font-size: 18px;
  line-height: 1.22;
  border-right: 2px solid #1B1712;
}
.table .cell:last-child {
  border-right: none;
}
.table .head .cell {
  background: var(--ink);
  color: var(--gold);
  font-family: "SF Mono", Menlo, Consolas, monospace;
  font-size: 12px;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-weight: 900;
}
.table .cell.k {
  background: #EDCA70;
  font-weight: 900;
}
.table .cell.b {
  background: var(--redbg);
  color: var(--sub-dark);
  font-weight: 800;
}
.table .cell.l {
  background: #D9F0F2;
  color: var(--law);
  font-weight: 800;
}
/* .table.fit — compact, non-overflowing variant (Law In The Ancient World).
   Forces equal, wrapping columns that fit the 1280x720 slide instead of
   inheriting the generic .row gap:40px which pushes 5 columns off-slide. */
.table.fit {
  width: 100%;
  margin-top: 18px;
}
.table.fit .row {
  display: flex;
  gap: 0;
  align-items: stretch;
  flex: 0 0 auto;
}
.table.fit .cell {
  flex: 1 1 0;
  min-width: 0;
  font-size: 14px;
  line-height: 1.2;
  padding: 8px 11px;
}
.table.fit .cell .tag{
	font-weight: bold;
	font-size: 12px;
}
.table.fit .cell:first-child {
  flex: 0 0 118px;
}
.table.fit .head .cell {
  font-size: 10.5px;
  padding: 9px 11px;
  align-self: stretch;
}
.ledger {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 22px;
  margin-top: 22px;
}
.ledger .side {
  border: 3px solid var(--ink);
  box-shadow: 8px 8px 0 rgba(17, 16, 14, .16);
  padding: 20px;
  background: var(--paper);
}
.side.bad {
  background: var(--redbg);
  border-color: var(--bad);
}
.side.law {
  background: #D9F0F2;
  border-color: var(--law);
}
.side .side-title {
  font-size: 32px;
  font-weight: 900;
  margin-bottom: 10px;
}
.side ul {
  margin-left: 22px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.side li {
  font-size: 21px;
  line-height: 1.22;
}
.linecall {
  margin-top: 20px;
  background: var(--ink);
  color: var(--accent2);
  padding: 16px 20px;
  font-size: 30px;
  line-height: 1.14;
  font-weight: 900;
  box-shadow: 8px 8px 0 rgba(17, 16, 14, .18);
}
.redline {
  color: var(--sub-dark);
}
.lawline {
  color: var(--law);
}
.gold {
  color: var(--gold);
}

.warn {
  color: var(--warn);
}
.lawtext {
  color: var(--law2);
}
.badtext {
  color: var(--bad);
}
.burnQuote {
  font-size: clamp(24px, 7.031vw, 54px);
  line-height: 1.04;
  font-weight: 900;
  max-width: min(1060px, 100%);
  color: #f7f1e9;
}
.burnQuote .mark {
  color: var(--gold);
  display: block;
  font-size: clamp(34px, 9.896vw, 76px);
  line-height: .85;
  margin-bottom: 10px;
}
.burnArc {
  display: grid;
  grid-template-columns: 1fr 90px 1fr 90px 1fr;
  align-items: stretch;
  gap: 12px;
  margin-top: 28px;
  width: 100%;
  max-width: 1080px;
}
.burnArc .step {
  border: 2px solid var(--muted);
  background: var(--ink2);
  padding: 16px 18px;
  min-height: 116px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.burnArc .step b {
  color: var(--gold);
  font-size: 24px;
  line-height: 1.05;
}
.burnArc .step span {
  display: block;
  margin-top: 8px;
  color: #dacbbd;
  font-size: 18px;
  line-height: 1.2;
}
.burnArc .burnArrow {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gold);
  font-size: clamp(20px, 5.729vw, 44px);
  font-weight: 900;
}
.artifactBox {
  position: relative;
  overflow: hidden;
  min-height: 250px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.artifactBox:before {
  content: "";
  position: absolute;
  right: -36px;
  top: -36px;
  width: 130px;
  height: 130px;
  border-radius: 999px;
  background: rgba(139, 30, 30, .14);
  border: 2px solid rgba(139, 30, 30, .24);
}
.artifactTop {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}
.artifactIcon {
  width: 58px;
  height: 58px;
  border: 3px solid var(--sub-dark);
  background: var(--bg3);
  color: var(--sub-dark);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  font-weight: 900;
  box-shadow: 5px 5px 0 rgba(92, 18, 15, .18);
}
.artifactClaim {
  position: relative;
  border: 2px solid var(--sub-dark);
  background: rgba(255, 248, 234, .78);
  padding: 12px 14px;
  font-size: 21px;
  line-height: 1.16;
  font-weight: 900;
  color: var(--sub-dark);
}
.artifactSmall {
  position: relative;
  margin-top: 10px;
  font-size: 17px;
  line-height: 1.2;
  color: var(--ink2);
}
.discardRow {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-top: 18px;
}
.trashCard {
  border: 3px dashed var(--sub-dark);
  background: var(--bg3);
  padding: 16px 18px;
  box-shadow: 8px 8px 0 rgba(92, 18, 15, .12);
}
.trashCard .title {
  font-size: 26px;
  font-weight: 900;
  color: var(--sub-dark);
  margin-bottom: 8px;
}
.trashCard .txt {
  font-size: 20px;
  line-height: 1.22;
  color: var(--ink2);
  font-weight: 800;
}
.sourceTag {
  font-size: 12px;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-weight: 900;
  color: var(--sub-dark);
  margin-bottom: 10px;
}
.sourceQuote {
  position: relative;
  border: 2px solid var(--sub-dark);
  background: var(--redbg);
  padding: 14px 15px;
  font-size: 25px;
  line-height: 1.12;
  font-weight: 900;
  color: var(--sub-dark);
  box-shadow: 5px 5px 0 rgba(92, 18, 15, .16);
}
.sourceNote {
  margin-top: 12px;
  font-size: 18px;
  line-height: 1.2;
  color: var(--ink2);
  font-weight: 800;
}
.lawSource {
  border-color: var(--law);
  color: var(--law);
  background: var(--lawbg);
  box-shadow: 5px 5px 0 rgba(13, 59, 76, .15);
}

  .visual-bg {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    z-index:0;
    pointer-events:none;
  }
  .visual-bg .ink { fill:#11100E; }
  .visual-bg .paper { fill:#FFF8EA; }
  .visual-bg .goldFill { fill:#F4C247; }
  .visual-bg .redFill { fill:#8B1E1E; }
  .visual-bg .lawFill { fill:#0D3B4C; }
  .visual-bg .mutedFill { fill:#6f6458; }
  .visual-bg .none { fill:none; }
  .visual-bg .strokeInk { stroke:#11100E; stroke-width:4; stroke-linecap:round; stroke-linejoin:round; }
  .visual-bg .strokeGold { stroke:#F4C247; stroke-width:5; stroke-linecap:round; stroke-linejoin:round; }
  .visual-bg .strokeRed { stroke:#8B1E1E; stroke-width:5; stroke-linecap:round; stroke-linejoin:round; }
  .visual-bg .strokeLaw { stroke:#0D3B4C; stroke-width:5; stroke-linecap:round; stroke-linejoin:round; }
  .visual-bg.faint { opacity:.17; }
  .visual-bg.mid { opacity:.24; }
  .visual-bg.strong { opacity:.32; }

.structure {
    height: 500px;
    margin-top: 22px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.pie-wrap {
    display: grid;
    grid-template-columns: 430px 1fr;
    align-items: center;
    gap: 56px;
}

.pie {
	    width: 330px;
    height: 330px;
    border-radius: 50%;
    background: conic-gradient(var(--law) 0 50%, var(--gold) 50% 100%);
    box-shadow: inset 0 0 0 42px var(--paper), 0 10px 24px rgba(17, 16, 14, .18);
}

.legend {
	    display: grid;
    gap: 22px;
}
.legend span {
    width: 28px;
    height: 28px;
    background: var(--law);
    display: inline-block;
}
.legend div {
    font-size: 34px;
    font-weight: 950;
    display: flex;
    align-items: center;
    gap: 14px;
}
.legend div:nth-child(2) span {
    background: var(--gold);
}

.roman-tears  .main-grid {
	    display: grid;
    grid-template-columns: 360px 1fr;
    gap: 22px;
    margin-top: 22px;
    align-items: stretch;
}

.roman-tears .structure {
    margin-top: 12px;
    height: 500px;
    justify-content: flex-start;
}

.patriarch {
	    position: relative;
    min-height: 356px;
    background: #11100e;
    color: #fbfaf7;
    border: 3px solid #11100e;
    box-shadow: 8px 8px 0 rgba(17, 16, 14, .16);
    padding: 28px 22px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.roman-tears .patriarch:before {
    content: "SPQR";
    position: absolute;
    top: 18px;
    left: 22px;
    font-family: 'SF Mono', Menlo, Consolas, monospace;
    letter-spacing: .2em;
    color: #d39c21;
    font-weight: 950;
    font-size: 16px;
}

.roman-tears .face {
    font-size: clamp(41px, 11.98vw, 92px);
    line-height: .9;
    margin-bottom: 8px;
    filter: grayscale(.1);
}

.receipt-wall {
	    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}

.roman-tears .source-card {
    background: rgba(251, 250, 247, .88);
    border: 2px solid #11100e;
    border-left: 11px solid var(--sub-dark);
    padding: 15px 16px 13px;
    min-height: 124px;
    box-shadow: 5px 5px 0 rgba(17, 16, 14, .10);
}
.roman-tears .source-card.gold {
    border-left-color: var(--gold);
}
.roman-tears .src {
    font-family: 'SF Mono', Menlo, Consolas, monospace;
    text-transform: uppercase;
    letter-spacing: .1em;
    font-size: 12px;
    font-weight: 950;
    color: var(--red);
    margin-bottom: 8px;
}
.roman-tears .source-card.gold .src {
    color: #8b5e14;
}
.roman-tears .claim {
    font-size: 23px;
    line-height: 1.08;
    font-weight: 950;
    color: #11100e;
}
.roman-tears .detail {
    margin-top: 8px;
    font-size: 16.5px;
    line-height: 1.15;
    font-weight: 780;
    color: #4a3f38;
}
.roman-tears .source-card.good {
    border-left-color: var(--law);
}


.roman-tears .tear-title {
    font-size: 39px;
    line-height: .95;
    font-weight: 950;
    letter-spacing: -.5px;
}
.roman-tears .tear-copy {
    margin-top: 18px;
    font-size: 21px;
    line-height: 1.16;
    font-weight: 800;
    color: #eadbca;
}

.jewish-delusion-frame {
      background:
        radial-gradient(circle at 22% 18%, rgba(255,210,74,.10), transparent 28%),
        radial-gradient(circle at 82% 78%, rgba(79,173,255,.10), transparent 30%),
        var(--chrome);
      border-top-color: var(--gold);
    }
    .jdf-head {
      margin-top: 22px;
      max-width: min(1060px, 100%);
    }
    
    .jdf-sub b { color: var(--gold); }
    .jdf-trap {
      margin-top: 34px;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 26px;
      align-items: stretch;
    }
    .jdf-panel {
      min-height: 330px;
      border: 3px solid rgba(255,255,255,.18);
      background: rgba(255,255,255,.055);
      padding: 28px 30px;
      box-shadow: 10px 10px 0 rgba(0,0,0,.32);
      position: relative;
		border-radius: 0px 0px 8px 8px;
    }
    .jdf-panel.bad {
      border-top: 16px solid var(--bad);
    }
    .jdf-panel.law {
      border-top: 16px solid var(--law2);
    }
    .jdf-panel.king {
      border-top: 16px solid var(--kingdark);
    }
    .jdf-label {
      font-family: "SF Mono", Menlo, Consolas, monospace;
      font-size: 15px;
      letter-spacing: .16em;
      text-transform: uppercase;
      font-weight: 900;
      margin-bottom: 18px;
    }
  .jdf-panel.bad .jdf-label { color: var(--sub-dark); } 
.dark   .jdf-panel.bad .jdf-label { color: #ffb0a8; }

    .jdf-panel.law .jdf-label { color: #9ad8ff; }
    .jdf-main {
      font-size: 34px;
      font-weight: 950;
      line-height: 1.05;
      margin-bottom: 22px;
    }
    .jdf-list {
      display: grid;
      gap: 12px;
      font-size: 21px;
      line-height: 1.22;
      font-weight: 100;
    }
    .jdf-list div {
      border-left: 6px solid rgba(255,255,255,.22);
      padding-left: 14px;
    }
    .jdf-panel.bad .jdf-list div { border-left-color: var(--bad); }
    .jdf-panel.king .jdf-list div { border-left-color: var(--king); }
    .jdf-panel.law .jdf-list div { border-left-color: var(--law2); }
    .jdf-bottom {
      margin-top: 26px;
      background: rgba(255,210,74,.10);
      border: 2px solid rgba(255,210,74,.65);
      padding: 16px 22px;
      font-size: 24px;
      line-height: 1.18;
      font-weight: 900;
      color: var(--bg);
      text-align: center;
    }
    .jdf-bottom b { color: var(--gold); }

details.chapter-block > summary.kicker {
    cursor: pointer;
    height: 46px;
    padding: 14px 78px;
    background: #11100e;
    color: #ffd24a;
    border-top: 1px solid rgba(255, 255, 255, .12);
    position: sticky;
    top: 0;
    z-index: 30;
}
::marker {
    unicode-bidi: isolate;
    font-variant-numeric: tabular-nums;
    text-transform: none;
    text-indent: 0px !important;
    text-align: start !important;
    text-align-last: auto !important;
}

.nodef {
            background-color: var(--bg);
            border: 2px solid var(--bg-color);
            border-radius: 8px;
            padding: 20px;
            width: 100%;
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
            box-sizing: border-box;
            position: relative;
            transition: transform 0.2s ease;
        }

        .nodef:hover {
            transform: translateY(-2px);
        }

        .nodef.source { border-color: var(--ink); }
        .nodef.break { border-color: var(--accent); }
        .nodef.product { border-color: #27ae60; }

        .nodef-title {
            font-size: 1.1rem;
            font-weight: 700;
            margin-top: 0;
            margin-bottom: 8px;
            text-transform: uppercase;
            letter-spacing: 0.5px;
        }

        .source .nodef-title { color: var(--ink); }
        .break .nodef-title { color: var(--accent); }
        .product .nodef-title { color: #27ae60; }

        .nodef-content {
            font-size: 0.95rem;
            line-height: 1.5;
            color: var(--ink2);
            margin: 0;
        }

        .nodef-sub {
            font-size: 0.85rem;
            color: var(--muted);
            margin-top: 6px;
            font-style: italic;
        }

        .arrowf {
            display: flex;
            flex-direction: column;
            align-items: center;
            margin: 15px 0;
            color: var(--muted);
            font-weight: bold;
        }

        .arrowf-line {
            width: 2px;
            height: 40px;
            background-color: var(--bg-color);
            position: relative;
        }

        .arrowf-line::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            border-left: 6px solid transparent;
            border-right: 6px solid transparent;
            border-top: 8px solid var(--bg);
        }

        .arrowf.faulty .arrowf-line {
            background-color: var(--accent);
        }

        .arrowf.faulty .arrowf-line::after {
            border-top-color: var(--accent);
        }

        .arrowf-label {
            font-size: 0.8rem;
            margin-bottom: 5px;
            text-transform: uppercase;
            letter-spacing: 0.5px;
        }
        
        .faulty .arrowf-label {
            color: var(--accent);
            font-weight: bold;
        }


.slide.torah-nomos-slide{
  background: radial-gradient(circle at 18% 18%, rgba(79,173,255,.20), transparent 24%),
              radial-gradient(circle at 86% 16%, rgba(211,156,33,.20), transparent 24%),
              linear-gradient(135deg,#fbfaf7 0%,#efe3cf 100%);
  border-top-color:#0d114c;
}
.torah-nomos-slide .torah-stage{display:grid;grid-template-columns:1fr 170px 1fr;gap:22px;align-items:stretch;margin-top:18px;}
.torah-nomos-slide .language-block{border:3px solid #11100e;background:rgba(251,250,247,.84);padding:18px 24px;box-shadow:8px 8px 0 rgba(17,16,14,.12);}
.torah-nomos-slide .language-block.torah{border-top:12px solid #0d114c;}
.torah-nomos-slide .language-block.nomos{border-top:12px solid #8b1e1e;}
.torah-nomos-slide .lang-word{font-size: clamp(29px, 8.333vw, 64px);line-height:.95;font-weight:950;letter-spacing:-1px;margin-bottom:8px;}
.torah-nomos-slide .hebrew{font-size: clamp(26px, 7.552vw, 58px);color:#0d114c;direction:rtl;}
.torah-nomos-slide .greek{font-size: clamp(24px, 7.031vw, 54px);color:#8b1e1e;}
.torah-nomos-slide .meaning{font-size:24px;line-height:1.12;font-weight:900;margin-top:16px;}
.torah-nomos-slide .small{font-size:21px;line-height:1.22;font-weight:100;color:#4a3f38;margin-top:12px;}
.torah-nomos-slide .loss{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:14px;}
.torah-nomos-slide .loss .arrow{font-size: clamp(32px, 9.375vw, 72px);font-weight:950;color:#11100e;}
.torah-nomos-slide .loss .badge{background:var(--ink);color:var(--gold);border-radius:999px;padding:12px 16px;font:900 14px "SF Mono",Menlo,monospace;text-transform:uppercase;letter-spacing:.12em;text-align:center;}
.torah-nomos-slide .output-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px;}
.torah-nomos-slide .output{background:var(--bg);color:var(--erase);padding:18px 22px;border-left:12px solid #d39c21;box-shadow:6px 6px 0 rgba(17,16,14,.14);}
.torah-nomos-slide .output.bad{border-left-color:#8b1e1e;}
.torah-nomos-slide .output.good{border-left-color:#0d114c;}
.torah-nomos-slide .output .label{font:900 12px "SF Mono",Menlo,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--grey-bg);margin-bottom:8px;}
.torah-nomos-slide .output .txt{font-size:24px;line-height:1.07;font-weight:500;}
.torah-nomos-slide .bottom-line{margin-top:16px;font-size:24px;line-height:1.1;font-weight:600;color:#11100e;}

/* S7 */
.gate-inquiry .gate{position:absolute;left:92px;top:155px;width:520px; max-width: 100%;height:420px}.tower{position:absolute;bottom:0;width:130px;height:330px;background:var(--blue);border:4px solid var(--ink)}.tower.left{left:0}.tower.right{right:0}.arch{position:absolute;bottom:0;left:130px;width:260px;height:260px;background:var(--blue);border:4px solid var(--ink);border-bottom:0;border-radius:150px 150px 0 0}.door{position:absolute;bottom:0;left:190px;width:140px;height:210px;background:var(--paper);border:4px solid var(--ink);border-bottom:0;border-radius:80px 80px 0 0}.gate-text{position:absolute;right:82px;top:160px;width:560px}.gate-text .huge{font-size: clamp(35px, 10.16vw, 78px);line-height:.92;font-weight:970;color:var(--red)}.gate-text .copy{font-size:30px;line-height:1.14;font-weight:850;margin-top:22px}.gate-rule{position:absolute;right:82px;bottom:90px;background:var(--black);color:#fff8ea;padding:18px 24px;font-size:30px;font-weight:950;border-left:12px solid var(--gold)}

.segment-grid{display:grid;grid-template-columns:500px 1fr;gap:28px;align-items:stretch;flex:1}.segment-grid.noimg{grid-template-columns:1fr}.visual{background:#111;border:3px solid rgba(17,16,14,.7);box-shadow:8px 8px 0 rgba(17,16,14,.16);min-height: 120px;position:relative;overflow:hidden}.visual img{width:100%;height:100%;object-fit:cover;display:block;}.dark .visual{border-color:#463d32;box-shadow:8px 8px 0 rgba(244,194,71,.12)}
.bullets{display:flex;flex-direction:column;gap:14px;margin-top:8px}.bullet{background:rgba(251,250,247,.82);border:2px solid #11100e;border-left:12px solid var(--law);padding:16px 12px;font-size:24px;line-height:1.12;font-weight:850;box-shadow:5px 5px 0 rgba(17,16,14,.11)}.dark .bullet{background:#171510;border-color:#544839;color:#f7efe6}.redbg .bullet{border-left-color:var(--bad)}.greenbg .bullet{border-left-color:var(--good)}
.punchbar{margin-top:16px;background:#11100e;color:#fff8ec;border-left:16px solid var(--gold);padding:16px 20px;font-size:30px;line-height:1.08;font-weight:950;box-shadow:6px 6px 0 rgba(17,16,14,.14)}.dark .punchbar{background:#fff8ec;color:#11100e}.law .punchbar{border-left-color:var(--law)}
.slide.missing-added .bigrail .step{min-height:120px;display:flex;flex-direction:column;justify-content:center;}
.slide.missing-added .bigrail .step small{display:block;font-size:15px;font-weight:800;line-height:1.15;color:var(--muted);margin-top:8px;}
.slide.dark.missing-added .bigrail .step small{color:#c9bbac;}
.slide .rail{display:flex;align-items:center;gap:12px;margin-top:22px;flex-wrap:wrap;}
.slide .rail .step{background:var(--paper);border:3px solid var(--ink);box-shadow:5px 5px 0 rgba(17,16,14,.14);padding:16px 18px;font-size:20px;line-height:1.12;font-weight:900;text-align:center;min-width:130px;flex:1;}


.slide.dark .rail .step{background:#171510;color:#f3ece4;border-color:#443c31;}

.slide .rail .arrow{font-size:34px;font-weight:900;color:var(--accent)}


.pipeline{margin-top:38px;height:380px;position:relative}.pipe{position:absolute;left:70px;right:70px;top:177px;height:18px;background:var(--gold)}.stage{position:absolute;top:86px;width:204px;height:206px;border:3px solid var(--ink);background:var(--paper);box-shadow:7px 7px 0 rgba(17,16,14,.12);padding:20px}.stage .snum{font-family:"SF Mono";font-size:14px;letter-spacing:.1em;font-weight:950;color:var(--red)}.stage .stxt{font-size:27px;line-height:1;font-weight:950;margin-top:20px}.stage .small{font-size:16px;line-height:1.15;font-weight:800;color:var(--muted);margin-top:14px}.st1{left:0}.st2{left:232px}.st3{left:464px}.st4{left:696px}.st5{left:928px}.st3{background:#fff2c1}.st5{background:#f6dada;border-color:var(--red)}

.menu {
	    border: 1px solid rgba(16, 16, 14, .18);
    background: rgba(255, 255, 255, .48);
    padding: 28px;
    border-radius: 22px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 16px;
    box-shadow: 0 16px 34px rgba(17, 16, 14, .06);
}
.menu .label {
    font: 900 15px "SF Mono", Menlo, Consolas, monospace;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--accent);
}
.menu .big {
    font-size: 34px;
    line-height: 1.22;
    font-weight: 800;
    max-width: min(1020px, 100%);
}
.menu .big.bad{
color: var(--bad);
}

.small {
    font-size: 20px;
    line-height: 1.38;
    color: var(--muted);
}

.journey {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    margin-top: 36px;

}
.journey .stage {
	top: auto;
	width: auto;
	height: auto;
	position:relative;
    min-height: 300px;
    background: rgba(251, 250, 247, .85);
    border: 3px solid var(--ink);
    box-shadow: 7px 7px 0 rgba(17, 16, 14, .13);
    padding: 22px;
    display: flex;
    flex-direction: column;
	justify-content: space-between;}

.stage .stage-title {
    font-size: 33px;
    font-weight: 950;
    text-transform: uppercase;
    line-height: .95;
}

.stage .stage-text {
    font-size: 19px;
    line-height: 1.25;
    color: #40362c;
}


.pillars {
	
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    align-items: end;
    gap: 22px;
    height: 390px;
}
.pillar {
    background: var(--lawbg);
    border: 3px solid var(--law);
    border-top: 24px solid var(--law);
    padding: 24px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    font-size: 25px;
    line-height: 1.12;
    font-weight: 800;
}
.pillar:nth-child(2) {
    height: 84%;
    border-color: var(--gold);
    border-top-color: var(--gold);
    background: #f7edd2;
}

.pillar-top {
    font-size: 34px;
    font-weight: 950;
    margin-bottom: 16px;
}
.pillar:nth-child(3) {
    height: 96%;
    border-color: var(--bad);
    border-top-color: var(--bad);
    background: var(--redbg);
}


.radial {
	    position: relative;
    height: 380px;
}
center, .loopcore {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 230px;
    height: 230px;
    border-radius: 50%;
    background: var(--law);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 29px;
    line-height: 1.05;
    font-weight: 950;
    box-shadow: 0 12px 28px rgba(17, 16, 14, .22);
}
.bubble, .loopnode {
    position: absolute;
    width: 150px;
    height: 82px;
    border: 2px solid var(--line);
    background: var(--paper);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 23px;
    font-weight: 900;
    box-shadow: 5px 5px 0 rgba(17, 16, 14, .10);
}

.b1 {
    left: 140px;
    top: 30px;
}

.b2 {
    left: 500px;
    top: 18px;
}
.b3 {
    right: 140px;
    top: 30px;
}

.b4 {
    left: 130px;
    bottom: 24px;
}

.b5 {
    left: 500px;
    bottom: 8px;
}
.b6
 {
    right: 130px;
    bottom: 24px;
}

.hierarchy {
	    height: 486px;
    margin-top: 22px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.hierarchy .stack {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;

}
.slide.blue{background:linear-gradient(135deg,#e9f2fb,#d8e4f7);border-top-color:var(--law)}

.blue .stack{display:flex;flex-direction:column;gap:14px;margin-top:24px}
.blue .stack .bar{background:var(--paper);border-left:14px solid var(--law);padding:18px 22px;font-size:25px;font-weight:900;box-shadow:6px 6px 0 rgba(17,16,14,.12)}
.blue .stack .bar.red{border-left-color:var(--bad)}
.blue .stack .bar.king{border-left-color:var(--accent)}
.green .gate{display:grid;grid-template-columns:390px 1fr;gap:34px;align-items:center;flex:1}
.slide.green{background:linear-gradient(135deg,#eaf8dd,#a9d49f);border-top-color:var(--green)}

.gate-icon{height:450px;border:12px solid var(--ink);border-bottom:none;border-radius:190px 190px 0 0;position:relative;box-shadow:10px 10px 0 rgba(17,16,14,.12)}
.gate-icon:before,.gate-icon:after{content:"";position:absolute;bottom:0;width:92px;height:280px;background:var(--ink)}
.gate-icon:before{left:70px}.gate-icon:after{right:70px}


.hnode, .stackrow {
    width: 78%;
    padding: 18px;
    text-align: center;
    font-size: 28px;
    font-weight: 950;
    border: 2px solid var(--line);
    background: var(--paper);
    box-shadow: 5px 5px 0 rgba(17, 16, 14, .10);
}
.hnode.top, .s1 {
    background: var(--law);
    color: #fff;
    width: 54%;
}

.hnode.under, .s2 {
    background: var(--lawbg);
    color: var(--law);
}




.airow {
	    display: flex;
	    justify-content: center;
    align-items: stretch;
    gap: 8px;
}
.aitem {
	    background: var(--paper);
    border: 2px solid var(--line);
    border-top: 10px solid var(--law);
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    line-height: 1.08;
    font-weight: 900;
    box-shadow: 6px 6px 0 rgba(17, 16, 14, .12);
    font-size: 20px;
    min-height: 112px;
    padding: 12px;
    border-top-color: var(--bad);
}

.missingbox {
	    margin-top: 28px;
    border: 3px dashed var(--bad);
    background: var(--badbg);
    padding: 22px;
    display: flex;
    align-items: center;
    gap: 16px;
}.missingbox div {
    font-size: 24px;
    font-weight: 950;
    color: var(--bad);
    text-transform: uppercase;
    letter-spacing: .1em;
    margin-right: 8px;
}.missingbox span {
    background: #fff;
    border: 2px solid var(--bad);
    padding: 12px 18px;
    font-size: 26px;
    font-weight: 900;
}

.receipts {
	    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}
.receipt {
    min-height: 150px;
    background: var(--paper);
    border: 2px solid var(--line);
    border-left: 12px solid var(--bad);
    padding: 16px;
    box-shadow: 5px 5px 0 rgba(17, 16, 14, .10);
}.receipt div {
    font-size: 24px;
    font-weight: 950;
    margin-bottom: 10px;
    color: var(--bad);
}.receipt span {
    font-size: 21px;
    line-height: 1.16;
    font-weight: 800;
}

 .scale-wrap {
    display: grid;
    grid-template-columns: 1fr 160px 1fr;
    gap: 20px;
    align-items: center;
    margin-top: 34px;
}
 .panel {
	 	    font-size: 21px;
    line-height: 1.28;
    margin-bottom: 8px;
    background: rgba(251, 250, 247, .84);
	 color: var(--bg-color);
    border: 3px solid var(--ink);
    box-shadow: 8px 8px 0 rgba(17, 16, 14, .14);
    padding: 24px 26px;
}
.scale-wrap .scale-center {
    height: 360px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.scale-wrap .scale-center:before {
    content: "";
    width: 10px;
    height: 330px;
    background: var(--ink);
    display: block;
    box-shadow: 0 0 0 2px rgba(255, 255, 255, .2);
}
.scale-wrap .scale-center:after {
    content: "⚖";
    position: absolute;
    top: 20px;
    font-size: clamp(39px, 11.2vw, 86px);
    filter: grayscale(.3);
}
.panel h3 {
    font-size: 28px;
    line-height: 1.05;
    text-transform: uppercase;
    font-weight: 900;
    margin: 0 0 14px;
}
.panel p {
	    font-size: 21px;
    line-height: 1.28;
    margin-bottom: 8px;
} 



.big-word {
    font-size: clamp(52px, 15.1vw, 116px);
    font-weight: 950;
    line-height: .9;
    letter-spacing: -4px;
    text-transform: uppercase;
    color: rgba(17, 16, 14, .09);
    position: absolute;
    right: 50px;
    bottom: 42px;
    z-index: 0;
}

.step .danger {
    border-color: var(--bad);
    background: #f4d5ce;
    color: var(--sub-dark);
}


/* === Gate inquiry slide · added 2026-07-01 === */
.slide.gate-inquiry {
  background: linear-gradient(135deg, #fbfaf7 0%, #f1e4d1 52%, #d9f0f2 100%);
  border-top-color: var(--law);
}
.gate-inquiry .gate-title {
  font-size: clamp(28px, 8.073vw, 62px);
  line-height: .98;
  font-weight: 950;
  letter-spacing: -1.4px;
  margin-top: 18px;
  max-width: 1100px;
  color: var(--ink);
}
.gate-inquiry .gate-sub {
  margin-top: 14px;
  font-size: 26px;
  line-height: 1.18;
  max-width: 1090px;
  color: #3b332b;
  font-weight: 750;
}
.gate-inquiry .gate-sub b { color: var(--law); }
.gate-inquiry .inquiry-stage {
  margin-top: 26px;
  display: grid;
  grid-template-columns: .9fr 1.55fr;
  gap: 26px;
  align-items: stretch;
  flex: 1;
  min-height: 0;
}
.gate-inquiry .wrong-court {
  background: #f5d7d1;
  border: 4px solid var(--bad);
  box-shadow: 10px 10px 0 rgba(139,30,30,.16);
  padding: 26px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.gate-inquiry .wrong-court .label {
  font-family:"SF Mono", Menlo, monospace;
  color: var(--bad);
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 15px;
  margin-bottom: 18px;
}
.gate-inquiry .wrong-court .badline {
  font-size: clamp(20px, 5.729vw, 44px);
  line-height: 1.03;
  font-weight: 950;
  color: var(--sub-dark);
}
.gate-inquiry .wrong-court .badnote {
  margin-top: 22px;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 780;
  color: #4a2a25;
}
.gate-inquiry .investigation {
  background: rgba(251,250,247,.86);
  border: 4px solid var(--law);
  box-shadow: 10px 10px 0 rgba(13,17,76,.13);
  padding: 22px 26px 20px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.gate-inquiry .investigation .label {
  font-family:"SF Mono", Menlo, monospace;
  color: var(--law);
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 15px;
  margin-bottom: 14px;
}
.gate-inquiry .investigation-grid {
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.gate-inquiry .inq {
  background: #f2f0ed;
  border-left: 10px solid var(--law);
  border-top: 2px solid rgba(17,16,14,.25);
  border-right: 2px solid rgba(17,16,14,.25);
  border-bottom: 2px solid rgba(17,16,14,.25);
  min-height: 76px;
  padding: 13px 14px;
  font-size: 22px;
  line-height: 1.05;
  font-weight: 930;
  display:flex;
  align-items:center;
}
.gate-inquiry .inq.gold { border-left-color: var(--accent2); }
.gate-inquiry .inq.red { border-left-color: var(--bad); }
.gate-inquiry .gate-bottom {
  margin-top: 18px;
  background: var(--ink);
  color: var(--bg2);
  padding: 16px 20px;
  font-size: 25px;
  line-height: 1.12;
  font-weight: 900;
  border-left: 14px solid var(--gold);
}
.gate-inquiry .gate-bottom b { color: var(--gold); }

@media (max-width: 600px) {
  .slide .row,
	.arow ,.prompt,
  .slide .row.top,
  .slide .duo,
  .slide .split,
  .slide .rail,
  .slide .flow,
  .slide .chain,
  .slide .arrowRow,
  .slide .torah-nomos-slide .loss {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 14px !important;
  }

  .slide .row .col {
    width: auto !important;
    max-width: 100% !important;
    flex: 0 1 auto !important;
  }

  .slide .grid2,
  .slide .grid3,
  .slide .grid4,
  .slide .grid5,
	.law-list,
	.law-item,
	.howwin .win-grid.four ,
  .slide .duo.tall,
  .slide .structure,
  .slide .bigrows,
  .slide .table .row,
  .slide .table.fit .row,
  .slide .segment-grid,
  .slide .torah-nomos-slide .torah-stage,
  .slide .torah-nomos-slide .output-row,
  .roman-tears .main-grid,
  .slide .gate-inquiry .gate-layout,
  .slide .gate-inquiry .investigation-grid,
  .slide .green .gate,
  .slide .gate-wrap,
  .slide .system-compare,
  .slide .info-row,
  .slide .strategy-grid,
	.strategy .ladder-vs-court,
  .slide .output-map,
  .slide .delivery-chain,
  .slide .download-table,
  .slide .kingdom-layer,
  .slide .nojew-grid,
  .slide .murder-split,
  .slide .kit-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
	  height: auto;
  }
  .slide .bridge-wrap
{
    display: grid !important;
    grid-template-columns:2 1fr !important;
    gap: 8px !important;
  }
	.strategy .ancient-ring,
	.bigrow ,
	.receipt-wall{
		display: flex;
		overflow: scroll;
				height: auto;
	}
	.strategy .ring-item,
	.roman-tears .source-card{
		width: auto !important;
    max-width: 100% !important;
    flex: 0 1 auto !important;
	}
  .slide .rail .arrow,
  .slide .flow .arr,
  .slide .step:not(:last-child)::after,
  .slide .torah-nomos-slide .loss .arrow {
    transform: none !important;
    position: static !important;
    text-align: center !important;
  }
	 .rung {
		display: grid;
	}

  .slide h1 {
    font-size: clamp(34px, 10vw, 52px) !important;
    line-height: 1.02 !important;
    letter-spacing: 0 !important;
  }

  .title-wrap h1 {
    font-size: clamp(36px, 11vw, 96px);
    letter-spacing: -1px;
  }

  .slide h2 {
    font-size: clamp(28px, 8.4vw, 42px) !important;
    line-height: 1.08 !important;
    letter-spacing: 0 !important;
  }

  .slide h3,
  .slide .title,
  .slide .head,
			.strategy .ring-core,

	.strategy .strategy-main,
  .slide .main,
  .slide .nm {
    font-size: clamp(20px, 6vw, 28px) !important;
    line-height: 1.14 !important;
    letter-spacing: 0 !important;
  }

  .slide p,
  .slide li,
  .slide .sub,
  .slide .note,
  .slide .body,
  .slide .copy,
  .slide .txt,
  .slide .small,

	.strategy .rank-step,
	.strategy .strategy-sub,
  .slide .corr,
  .slide .means {
    font-size: clamp(16px, 4.8vw, 20px) !important;
    line-height: 1.34 !important;
    letter-spacing: 0 !important;
  }

  .huge.punch,
  .punch .law-text,
  .punch .hl {
    font-size: clamp(32px, 10vw, 56px) !important;
    line-height: 1.05;
    letter-spacing: 0;
  }

  .slide .huge,
  .slide .big,
  .slide .bigstate,
  .slide .pull,
  .slide .quote,
  .slide .promise,
  .slide .punch,
  .slide .final,

  .slide .pt,
  .slide .big-word {
    font-size: clamp(28px, 8.5vw, 44px) !important;
    line-height: 1.08 !important;
    letter-spacing: 0 !important;
  }

	.patriarch {
height: auto;
	min-height: 0px;}
	.roman-tears .face{
		align-self: flex-end;
	}
	
  .slide .kicker,
  .slide .label,
  .slide .lab,
  .slide .tag,
  .slide .steptag,
	  .slide .bridge-line,
	.lane-t,
	.lane-head,.strategy .strategy-label,
	.strategy .ring-item .strategy-label,
.roman-tears .tear-copy,
  .slide .brandfoot,
  .slide .slidenum {
    font-size: clamp(11px, 3.3vw, 14px) !important;
    line-height: 1.25 !important;
  }

  .slide [style*="font-size"] {
    font-size: clamp(16px, 5vw, 22px) !important;
    line-height: 1.3 !important;
    letter-spacing: 0 !important;
  }

  .slide h1[style*="font-size"],
  .slide h2[style*="font-size"],
  .slide .huge[style*="font-size"],
  .slide .big[style*="font-size"],
  .slide .bigstate[style*="font-size"],
  .slide .pull[style*="font-size"],
  .slide .quote[style*="font-size"],
  .slide .promise[style*="font-size"],
  .slide .punch[style*="font-size"],
  .slide .final[style*="font-size"],
  .slide .pt[style*="font-size"] {
    font-size: clamp(28px, 8.5vw, 44px) !important;
    line-height: 1.08 !important;
  }
}

