:root {
  --ink: #090806;
  --ink-soft: #13110d;
  --paper: #d49f55;
  --paper-pale: #f5ddb1;
  --cream: #f3e6cf;
  --gold: #efbd32;
  --gold-hot: #ffd84a;
  --muted: #9d907b;
  --line: rgba(244, 215, 151, 0.24);
  --mouse-x: 0;
  --mouse-y: 0;
  --cursor-x: 50vw;
  --cursor-y: 50vh;
  color-scheme: dark;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  min-width: 1180px;
  margin: 0;
  overflow-x: hidden;
  background: var(--ink);
  color: var(--cream);
  font-family: "Arial Narrow", "Roboto Condensed", "Helvetica Neue", Arial, sans-serif;
  font-stretch: condensed;
}

body::before {
  position: fixed;
  z-index: -4;
  inset: 0;
  background: radial-gradient(circle at 77% 17%, rgba(196, 130, 27, 0.11), transparent 32%), #090806;
  content: "";
}

button, a { font: inherit; }

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

button { cursor: pointer; }

.noise {
  position: fixed;
  z-index: 50;
  inset: 0;
  pointer-events: none;
  opacity: 0.14;
  background-image:
    repeating-radial-gradient(circle at 20% 30%, rgba(255,255,255,.16) 0 1px, transparent 1px 3px),
    repeating-linear-gradient(82deg, rgba(255,255,255,.05) 0 1px, transparent 1px 4px);
  background-size: 5px 5px, 9px 9px;
  mix-blend-mode: soft-light;
  transition: opacity .5s ease;
}

.mouse-halo {
  position: fixed;
  z-index: 3;
  inset: 0;
  pointer-events: none;
  opacity: .3;
  background: radial-gradient(320px circle at var(--cursor-x) var(--cursor-y), rgba(246, 190, 52, .09), transparent 72%);
  mix-blend-mode: screen;
}

.section-shell { position: relative; overflow: hidden; }

.site-header {
  position: fixed;
  z-index: 40;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  width: 100%;
  height: 78px;
  padding: 0 4.55vw;
  border-bottom: 1px solid rgba(242, 216, 166, 0.14);
  background: linear-gradient(180deg, rgba(5, 5, 4, .89), rgba(7, 6, 5, .66) 73%, transparent);
  backdrop-filter: blur(10px);
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-width: 205px;
  color: var(--gold-hot);
  font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
  font-size: 21px;
  letter-spacing: .055em;
}

.brand-mark, .final-mark {
  display: grid;
  grid-template-columns: repeat(2, 8px);
  gap: 3px;
  width: 19px;
  transform: rotate(45deg);
}

.brand-mark i, .final-mark span {
  display: block;
  width: 8px;
  height: 8px;
  background: var(--gold-hot);
}

.brand-mark i:nth-child(1), .brand-mark i:nth-child(4), .final-mark span:nth-child(1), .final-mark span:nth-child(4) { opacity: .28; }

.main-nav {
  display: flex;
  gap: clamp(27px, 3.2vw, 66px);
  margin: 0 auto;
}

.main-nav a {
  position: relative;
  padding: 31px 0 27px;
  color: rgba(242, 229, 204, .58);
  font-family: "Courier New", monospace;
  font-size: 12px;
  letter-spacing: .08em;
  transition: color .25s ease;
}

.main-nav a::after {
  position: absolute;
  right: 50%;
  bottom: 17px;
  left: 50%;
  height: 1px;
  background: var(--gold-hot);
  content: "";
  transition: right .25s ease, left .25s ease;
}

.main-nav a:hover { color: var(--gold-hot); }
.main-nav a:hover::after { right: 0; left: 0; }

.header-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-width: 168px;
  height: 42px;
  color: #171006;
  background: var(--gold-hot);
  box-shadow: 0 0 26px rgba(255, 197, 40, .22);
  font-family: "Courier New", monospace;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .05em;
  transition: transform .25s ease, box-shadow .25s ease;
}

.header-action b { font-size: 18px; line-height: 0; }
.header-action:hover { transform: translateY(-2px); box-shadow: 0 7px 32px rgba(255, 197, 40, .44); }

.hero {
  min-height: max(800px, 100vh);
  padding: 78px 4.55vw 44px;
  isolation: isolate;
  background:
    linear-gradient(90deg, #090806 0%, rgba(9,8,6,.98) 28%, rgba(9,8,6,.72) 61%, rgba(9,8,6,.92) 100%),
    linear-gradient(180deg, #0d0c09, #090806);
}

.reference-wash {
  position: absolute;
  z-index: -3;
  top: 0;
  right: -7%;
  width: 76%;
  height: 100%;
  opacity: .34;
  background-image: linear-gradient(90deg, #090806 0%, transparent 35%), url("../assets/images/background-reference.png");
  background-position: center, right center;
  background-size: cover, 172% auto;
  filter: saturate(.9) contrast(1.2) brightness(.48) blur(1.5px);
  transform: scale(1.06) translateX(calc(var(--mouse-x) * -8px));
}

.hero-grid, .bag-grid, .final-grid {
  position: absolute;
  z-index: -2;
  inset: 0;
  pointer-events: none;
  background-image: linear-gradient(rgba(218, 176, 88, .09) 1px, transparent 1px), linear-gradient(90deg, rgba(218, 176, 88, .09) 1px, transparent 1px);
  background-size: 75px 75px;
  mask-image: linear-gradient(90deg, rgba(0,0,0,.9), transparent 76%);
}

.hero-sweep {
  position: absolute;
  z-index: -1;
  top: 15%;
  right: 13%;
  width: 51vw;
  height: 51vw;
  border: 1px solid rgba(255, 210, 92, .12);
  border-radius: 50%;
  box-shadow: 0 0 120px rgba(206, 142, 25, .1), inset 0 0 100px rgba(239, 186, 59, .06);
  transform: translate(calc(var(--mouse-x) * 15px), calc(var(--mouse-y) * 15px));
}

.hero-sweep::after {
  position: absolute;
  top: 9%;
  left: 4%;
  width: 87%;
  height: 87%;
  border: 1px dashed rgba(255, 218, 117, .1);
  border-radius: inherit;
  content: "";
  animation: slow-spin 30s linear infinite;
}

.hero-orbit {
  position: absolute;
  z-index: -1;
  border: 1px solid rgba(253, 203, 70, .2);
  border-radius: 50%;
}

.orbit-one { right: 15%; bottom: 3%; width: 29px; height: 29px; box-shadow: 0 0 22px var(--gold); animation: pulse 2.8s ease-in-out infinite; }
.orbit-two { right: 42%; top: 22%; width: 13px; height: 13px; background: var(--gold-hot); box-shadow: 0 0 20px var(--gold); animation: pulse 2.4s .6s ease-in-out infinite; }

.hero-copy {
  position: relative;
  z-index: 6;
  width: min(48vw, 770px);
  padding-top: clamp(105px, 13vh, 160px);
}

.eyebrow, .kicker, .meta-note, .console-heading, .hero-aside, .section-ledger, .aside-number, .room-topline, .site-footer, .slab-head {
  font-family: "Courier New", monospace;
  letter-spacing: .09em;
}

.eyebrow {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 22px;
  color: var(--gold-hot);
  font-size: 11px;
  font-weight: 700;
}

.eyebrow span { width: 27px; height: 1px; background: currentColor; }

.kicker {
  margin: 0 0 8px;
  color: rgba(241, 214, 155, .67);
  font-size: clamp(12px, 1vw, 17px);
  letter-spacing: .34em;
}

h1, h2, p { margin-top: 0; }

h1 {
  display: flex;
  flex-direction: column;
  margin: 0;
  font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
  font-size: clamp(90px, 9vw, 177px);
  font-weight: 400;
  line-height: .78;
  letter-spacing: .004em;
  text-transform: uppercase;
}

h1 span {
  color: #f4e8d3;
  text-shadow: 0 6px 0 rgba(196, 157, 93, .08);
}

h1 strong {
  position: relative;
  width: max-content;
  margin-top: 8px;
  color: var(--gold-hot);
  font-weight: 400;
  background: linear-gradient(180deg, #ffe271 0%, #e1a713 76%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 0 18px rgba(238, 182, 43, .2));
}

.hero-statement {
  max-width: 408px;
  margin: 29px 0 25px;
  color: rgba(247, 231, 203, .76);
  font-size: clamp(17px, 1.25vw, 22px);
  line-height: 1.36;
}

.hero-meta { display: flex; align-items: center; gap: 14px; margin-bottom: 22px; }

.ticker-chip {
  display: inline-flex;
  gap: 9px;
  align-items: baseline;
  padding: 7px 9px;
  border: 1px solid rgba(244, 198, 80, .42);
  color: var(--gold-hot);
  font-family: "Courier New", monospace;
  font-size: 12px;
}

.ticker-chip span { color: rgba(244, 226, 187, .53); font-size: 9px; }
.ticker-chip b { font-size: 15px; }
.muted-slash { color: rgba(242, 223, 181, .3); }
.meta-note { color: rgba(242, 223, 181, .55); font-size: 10px; }

.contract-console {
  width: min(100%, 495px);
  margin: 0 0 23px;
  border: 1px solid rgba(234, 197, 112, .42);
  background: rgba(11, 10, 8, .64);
  box-shadow: 0 15px 38px rgba(0, 0, 0, .22), inset 0 0 0 1px rgba(255, 224, 151, .04);
  backdrop-filter: blur(8px);
}

.console-heading {
  display: flex;
  justify-content: space-between;
  padding: 9px 13px 8px;
  border-bottom: 1px solid rgba(234, 197, 112, .22);
  color: rgba(240, 226, 196, .7);
  font-size: 9px;
}

.console-heading i { color: var(--gold-hot); font-style: normal; }

.contract-line { display: flex; align-items: center; justify-content: space-between; min-height: 55px; padding-left: 13px; gap: 10px; }

.contract-line code, .final-contract code {
  overflow: hidden;
  color: #f6ebd4;
  font-family: "Courier New", monospace;
  font-size: 14px;
  letter-spacing: .045em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.copy-button {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-width: 118px;
  height: 54px;
  border: 0;
  border-left: 1px solid rgba(234, 197, 112, .25);
  color: var(--gold-hot);
  background: rgba(229, 180, 43, .05);
  font-family: "Courier New", monospace;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  transition: background .24s ease, color .24s ease;
}

.copy-button:hover, .copy-button.is-copied { color: #171006; background: var(--gold-hot); }

.copy-icon { position: relative; display: inline-block; width: 13px; height: 15px; border: 1px solid currentColor; }
.copy-icon::before { position: absolute; top: -4px; left: -4px; width: 10px; height: 11px; border: 1px solid currentColor; content: ""; }

.hero-actions, .final-actions { display: flex; gap: 13px; }

.button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 36px;
  min-width: 194px;
  height: 54px;
  padding: 0 17px;
  overflow: hidden;
  border: 1px solid transparent;
  font-family: "Courier New", monospace;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .06em;
  transition: transform .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease;
}

.button::before { position: absolute; top: 0; bottom: 0; left: -34%; width: 25%; background: rgba(255,255,255,.34); content: ""; transform: skewX(-25deg); transition: left .45s ease; }
.button:hover { transform: translateY(-3px); }
.button:hover::before { left: 120%; }
.button:active { transform: translateY(0); }
.button b { position: relative; font-size: 22px; line-height: 0; }

.button-gold { color: #171006; background: var(--gold-hot); box-shadow: 0 8px 26px rgba(240, 190, 39, .22); }
.button-gold:hover { box-shadow: 0 11px 33px rgba(240, 190, 39, .42); }
.button-ghost { border-color: rgba(244, 220, 171, .42); color: var(--cream); background: rgba(15, 13, 9, .22); }
.button-ghost:hover { border-color: var(--gold-hot); color: var(--gold-hot); }

.hero-figure-wrap {
  position: absolute;
  z-index: 5;
  right: -1.2vw;
  bottom: 0;
  width: min(57vw, 1010px);
  height: calc(100% - 58px);
  min-height: 742px;
  pointer-events: none;
}

.figure-spotlight {
  position: absolute;
  right: 8%;
  bottom: 5%;
  width: 76%;
  height: 78%;
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(241, 183, 45, .26) 0%, rgba(176, 119, 17, .10) 37%, transparent 70%);
  filter: blur(5px);
  transform: translate(calc(var(--mouse-x) * -14px), calc(var(--mouse-y) * -11px));
}

.figure-frame { position: absolute; top: 10%; right: 13%; width: 62%; height: 68%; border: 1px solid rgba(244, 209, 125, .18); transform: rotate(-7deg); }
.figure-frame span { position: absolute; width: 25px; height: 25px; border-color: var(--gold-hot); border-style: solid; opacity: .74; }
.figure-frame span:nth-child(1) { top: -1px; left: -1px; border-width: 1px 0 0 1px; }
.figure-frame span:nth-child(2) { top: -1px; right: -1px; border-width: 1px 1px 0 0; }
.figure-frame span:nth-child(3) { bottom: -1px; left: -1px; border-width: 0 0 1px 1px; }
.figure-frame span:nth-child(4) { right: -1px; bottom: -1px; border-width: 0 1px 1px 0; }

.hero-figure {
  position: absolute;
  z-index: 3;
  right: 4%;
  bottom: 0;
  width: auto;
  max-width: 86%;
  height: min(92vh, 970px);
  object-fit: contain;
  object-position: bottom right;
  filter: drop-shadow(-17px 15px 26px rgba(0,0,0,.5)) drop-shadow(0 0 24px rgba(234, 179, 49, .11));
  transform: translate3d(calc(var(--mouse-x) * 13px), calc(var(--mouse-y) * 9px), 0) rotate(calc(var(--mouse-x) * .9deg));
  transform-origin: 50% 90%;
  animation: figure-breathe 5.2s ease-in-out infinite;
}

.paper-note {
  position: absolute;
  z-index: 5;
  padding: 12px 15px;
  color: #2a1b09;
  background: #e7b85e;
  box-shadow: 4px 5px 0 rgba(0,0,0,.22);
  font-family: "Courier New", monospace;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1.45;
  transform: rotate(-9deg) translate(calc(var(--mouse-x) * -5px), calc(var(--mouse-y) * -6px));
}

.note-top { top: 17%; left: 5%; }
.note-side { right: 1%; bottom: 26%; transform: rotate(6deg) translate(calc(var(--mouse-x) * -5px), calc(var(--mouse-y) * -6px)); }

.zhao-stamp {
  position: absolute;
  z-index: 1;
  top: 20%;
  right: 0;
  color: rgba(240, 186, 46, .48);
  font-family: Impact, Haettenschweiler, sans-serif;
  font-size: clamp(40px, 4vw, 73px);
  line-height: .77;
  letter-spacing: .12em;
  text-align: center;
}

.quiet-trigger {
  position: absolute;
  z-index: 8;
  right: 34%;
  bottom: 19%;
  display: grid;
  width: 45px;
  height: 45px;
  place-items: center;
  border: 1px dashed rgba(246, 211, 121, .75);
  border-radius: 50%;
  color: var(--gold-hot);
  background: rgba(12, 10, 6, .55);
  font-family: "Courier New", monospace;
  font-size: 10px;
  letter-spacing: .08em;
  pointer-events: auto;
  transition: transform .2s ease, background .2s ease;
}

.quiet-trigger:hover { background: var(--gold-hot); color: var(--ink); transform: rotate(12deg) scale(1.12); }

.quiet-message {
  position: absolute;
  z-index: 9;
  right: 24%;
  bottom: 27%;
  padding: 8px 11px;
  border: 1px solid rgba(243, 210, 126, .38);
  color: var(--gold-hot);
  background: rgba(9, 8, 6, .8);
  font-family: "Courier New", monospace;
  font-size: 9px;
  letter-spacing: .08em;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .25s ease, transform .25s ease;
}

.quiet-message.is-active { opacity: 1; transform: translateY(0); }

.hero-aside {
  position: absolute;
  z-index: 7;
  top: 25.5%;
  right: 4.5vw;
  width: 160px;
  color: rgba(246, 221, 167, .55);
  font-size: 9px;
}

.hero-aside > span { display: block; margin-bottom: 17px; color: var(--gold-hot); }
.hero-aside ul { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.hero-aside li { display: flex; gap: 7px; align-items: baseline; line-height: 1.25; }
.hero-aside b { color: var(--gold-hot); font-weight: 400; }

.scroll-signal {
  position: absolute;
  z-index: 8;
  bottom: 26px;
  left: 4.55vw;
  display: flex;
  align-items: center;
  gap: 13px;
  color: rgba(246, 228, 193, .52);
  font-family: "Courier New", monospace;
  font-size: 9px;
  letter-spacing: .12em;
}

.scroll-signal i { position: relative; display: block; width: 31px; height: 1px; background: var(--gold-hot); }
.scroll-signal i::after { position: absolute; right: 0; top: -3px; width: 7px; height: 7px; border-right: 1px solid var(--gold-hot); border-bottom: 1px solid var(--gold-hot); content: ""; transform: rotate(45deg); }

.marquee-band { overflow: hidden; height: 56px; border-top: 1px solid rgba(247, 212, 119, .25); border-bottom: 1px solid rgba(247, 212, 119, .25); color: var(--gold-hot); background: #0d0b07; }
.marquee-track { display: flex; align-items: center; width: max-content; height: 100%; animation: marquee 31s linear infinite; }
.marquee-track span, .marquee-track b { flex: 0 0 auto; font-family: "Courier New", monospace; font-size: 12px; font-weight: 700; letter-spacing: .12em; }
.marquee-track span { margin: 0 28px; }
.marquee-track b { color: #7e6121; font-size: 13px; }

.file-section {
  min-height: 880px;
  padding: 122px 9vw 112px 14.5vw;
  color: #241908;
  background:
    radial-gradient(circle at 78% 43%, rgba(255, 237, 193, .62), transparent 23%),
    repeating-linear-gradient(0deg, rgba(101, 58, 13, .045) 0 1px, transparent 1px 4px),
    linear-gradient(123deg, #e0ad67, #e8c485 52%, #bf803b);
}

.file-section::before { position: absolute; inset: 0; opacity: .12; background-image: repeating-linear-gradient(90deg, transparent 0 55px, #2c1b07 56px 57px, transparent 58px 113px); content: ""; }

.section-ledger {
  position: absolute;
  top: 125px;
  left: 4.55vw;
  display: grid;
  gap: 9px;
  color: rgba(46, 30, 8, .6);
  font-size: 10px;
  text-align: center;
}

.section-ledger::before, .section-ledger::after { display: block; width: 1px; height: 68px; margin: 0 auto; background: rgba(46, 30, 8, .32); content: ""; }
.section-ledger b { color: #241908; font-family: Impact, Haettenschweiler, sans-serif; font-size: 27px; font-weight: 400; }

.section-intro { position: relative; z-index: 1; max-width: 930px; }

h2 {
  margin-bottom: 0;
  font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
  font-size: clamp(64px, 6.5vw, 122px);
  font-weight: 400;
  letter-spacing: .01em;
  line-height: .88;
  text-transform: uppercase;
}

h2 em { color: #65400b; font-style: normal; }

.file-layout { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(470px, 1.07fr) 270px; align-items: end; gap: 5vw; max-width: 1020px; margin-top: 75px; }

.redacted-card { position: relative; min-height: 286px; padding: 18px 24px 20px; overflow: hidden; border: 1px solid rgba(51, 30, 6, .6); background: rgba(248, 222, 175, .34); box-shadow: 12px 12px 0 rgba(78, 39, 2, .22); transform: rotate(-1.3deg); }
.redacted-card::before { position: absolute; top: 18px; right: 23px; width: 104px; height: 104px; border: 2px solid rgba(77, 45, 6, .4); border-radius: 50%; content: ""; }
.redacted-card::after { position: absolute; top: 38px; right: 43px; color: rgba(77, 45, 6, .4); content: "NO\A RECORD"; font-family: "Courier New", monospace; font-size: 11px; font-weight: 700; line-height: 1.5; text-align: center; white-space: pre; transform: rotate(-24deg); }
.card-topline, .card-footnote { position: relative; z-index: 1; display: flex; justify-content: space-between; color: rgba(36, 25, 8, .7); font-family: "Courier New", monospace; font-size: 10px; letter-spacing: .08em; }
.card-topline b { color: #231806; }
.redacted-copy { position: relative; z-index: 1; width: 69%; margin-top: 48px; font-family: Georgia, "Times New Roman", serif; font-size: 22px; line-height: 1.26; }
.redacted-copy p { margin-bottom: 15px; }
.redaction-lines { position: absolute; right: 25px; bottom: 33px; left: 25px; display: flex; gap: 8px; flex-direction: column; }
.redaction-lines i { display: block; height: 9px; background: rgba(40, 25, 6, .89); }
.redaction-lines i:nth-child(1) { width: 48%; }
.redaction-lines i:nth-child(2) { width: 67%; }
.redaction-lines i:nth-child(3) { width: 33%; }
.redaction-lines i:nth-child(4) { width: 57%; }
.card-footnote { position: absolute; right: 24px; bottom: 17px; left: 24px; z-index: 2; align-items: end; }
.card-footnote strong { font-family: Impact, Haettenschweiler, sans-serif; font-size: 16px; font-weight: 400; letter-spacing: .05em; }

.file-aside { padding-bottom: 9px; }
.aside-number { color: rgba(58, 35, 4, .66); font-size: 10px; }
.file-aside > p:nth-child(2) { margin: 16px 0 22px; font-family: Georgia, "Times New Roman", serif; font-size: 21px; line-height: 1.24; }
.paper-seal { display: grid; width: 104px; height: 104px; place-items: center; border: 1px solid rgba(42, 27, 5, .56); border-radius: 50%; text-align: center; transform: rotate(11deg); }
.paper-seal span { font-family: Georgia, serif; font-size: 39px; font-style: italic; line-height: .5; }
.paper-seal small { margin-top: -22px; font-family: "Courier New", monospace; font-size: 8px; letter-spacing: .06em; }
.footnote-line { position: relative; z-index: 1; display: flex; align-items: center; gap: 17px; width: 77%; margin-top: 93px; color: rgba(52, 32, 6, .68); font-family: "Courier New", monospace; font-size: 10px; letter-spacing: .1em; }
.footnote-line span { display: block; height: 1px; flex: 1; background: rgba(56, 33, 6, .38); }
.footnote-line p { margin: 0; }

.bag-section {
  min-height: 1000px;
  padding: 122px 8.6vw 105px 12.5vw;
  isolation: isolate;
  background: radial-gradient(circle at 80% 44%, rgba(211, 146, 29, .2), transparent 26%), #0a0906;
}

.bag-grid { opacity: .48; mask-image: linear-gradient(90deg, rgba(0,0,0,.62), transparent 72%); }
.bag-shadow-word { position: absolute; z-index: -1; right: -1.3vw; bottom: 18%; color: rgba(234, 181, 51, .045); font-family: Impact, Haettenschweiler, sans-serif; font-size: 20vw; line-height: .7; letter-spacing: -.035em; }
.bag-copy { position: relative; z-index: 3; width: 42%; }
.bag-copy h2 { color: #f3e7d1; }
.bag-copy h2 em { color: var(--gold-hot); }
.bag-copy > p:not(.eyebrow) { max-width: 390px; margin: 35px 0 39px; color: rgba(239, 224, 195, .72); font-size: 20px; line-height: 1.43; }
.rule-list { display: grid; width: min(100%, 395px); border-top: 1px solid rgba(239, 203, 122, .25); }
.rule-list div { display: grid; grid-template-columns: 47px auto; gap: 13px; padding: 14px 0; border-bottom: 1px solid rgba(239, 203, 122, .25); color: rgba(247, 229, 194, .67); font-family: "Courier New", monospace; font-size: 11px; letter-spacing: .03em; }
.rule-list b { color: var(--gold-hot); font-weight: 400; }

.portrait-slab {
  position: absolute;
  z-index: 2;
  top: 74px;
  right: 8.6vw;
  width: min(39vw, 675px);
  height: 830px;
  overflow: hidden;
  border: 1px solid rgba(246, 208, 110, .48);
  background: linear-gradient(136deg, rgba(99, 66, 20, .49), rgba(15, 12, 7, .28));
  box-shadow: 14px 14px 0 rgba(204, 145, 33, .18), 0 25px 75px rgba(0,0,0,.6);
  transform: rotate(2deg);
}

.portrait-slab::before { position: absolute; z-index: 1; inset: 62px 25px 25px; border: 1px solid rgba(255, 222, 139, .22); content: ""; }
.slab-head { position: absolute; z-index: 4; top: 0; right: 0; left: 0; display: flex; justify-content: space-between; padding: 16px 18px; border-bottom: 1px solid rgba(246, 208, 110, .36); color: rgba(247, 224, 173, .75); background: rgba(6, 6, 4, .59); font-size: 9px; }
.slab-head b { color: var(--gold-hot); font-weight: 400; }
.slab-glow { position: absolute; inset: 13% 0 0; background: radial-gradient(ellipse at 60% 37%, rgba(235, 175, 40, .55), transparent 48%); filter: blur(6px); }
.portrait-slab img { position: absolute; z-index: 3; right: -7%; bottom: -2%; width: 107%; filter: drop-shadow(-12px 18px 20px rgba(0,0,0,.42)); transform: translate(calc(var(--mouse-x) * 9px), calc(var(--mouse-y) * 9px)); transition: transform .2s linear; }
.slab-corner { position: absolute; z-index: 5; width: 40px; height: 40px; border-color: var(--gold-hot); border-style: solid; }
.slab-corner.tl { top: 54px; left: 17px; border-width: 1px 0 0 1px; }
.slab-corner.br { right: 17px; bottom: 17px; border-width: 0 1px 1px 0; }
.slab-caption { position: absolute; z-index: 6; bottom: 28px; left: 30px; display: flex; align-items: center; gap: 9px; color: var(--gold-hot); font-family: "Courier New", monospace; font-size: 10px; font-weight: 700; letter-spacing: .09em; line-height: 1.25; }
.slab-caption i { display: inline-block; width: 22px; height: 22px; border: 1px solid var(--gold-hot); border-radius: 50%; }

.paper-tiles { position: absolute; bottom: 8.2%; left: 12.5vw; display: flex; gap: 11px; }
.paper-tiles div { display: grid; width: 91px; height: 91px; place-items: center; color: #2b1b07; background: #dbaa5a; box-shadow: 5px 6px 0 rgba(0,0,0,.2); font-family: "Courier New", monospace; font-size: 10px; font-weight: 700; letter-spacing: .08em; line-height: 1.35; text-align: center; }
.paper-tiles div:nth-child(1) { transform: rotate(-8deg); }
.paper-tiles div:nth-child(2) { background: #e8c06f; transform: translateY(-8px) rotate(4deg); }
.paper-tiles div:nth-child(3) { transform: rotate(8deg); }

.room-section {
  min-height: 925px;
  padding: 107px 11vw 92px;
  isolation: isolate;
  background: #14100a;
}

.room-reference { position: absolute; z-index: -2; top: 0; right: 0; bottom: 0; left: 0; opacity: .19; background: linear-gradient(90deg, #110d08 0%, rgba(13,10,6,.86) 37%, rgba(14,11,7,.26) 100%), url("../assets/images/background-reference.png"); background-position: center, right center; background-size: cover, 156% auto; filter: sepia(.35) contrast(1.3) brightness(.55); }
.room-section::after { position: absolute; z-index: -1; inset: 0; background: radial-gradient(ellipse at 70% 56%, transparent 0%, rgba(2,2,1,.4) 61%, rgba(2,2,1,.77) 100%); content: ""; }

.room-topline { position: relative; display: flex; justify-content: space-between; padding-bottom: 17px; border-bottom: 1px solid rgba(240, 207, 130, .3); color: rgba(249, 224, 172, .64); font-size: 10px; }
.room-topline b { color: var(--gold-hot); font-weight: 400; }
.room-content { display: grid; grid-template-columns: 1.12fr .72fr; gap: 13vw; align-items: end; margin-top: 15vh; }
.room-quote h2 { color: #f1e7d4; }
.room-quote h2 em { color: var(--gold-hot); }
.room-notes { max-width: 385px; margin-bottom: 5px; }
.room-notes p { color: rgba(246, 230, 199, .76); font-family: Georgia, "Times New Roman", serif; font-size: 20px; line-height: 1.46; }
.room-notes blockquote { margin: 29px 0 0; padding: 19px 0 4px 22px; border-left: 2px solid var(--gold-hot); color: var(--gold-hot); font-family: "Courier New", monospace; font-size: 12px; font-weight: 700; letter-spacing: .05em; line-height: 1.45; }
.room-desk { position: absolute; right: 11vw; bottom: 75px; left: 11vw; display: grid; grid-template-columns: 1.3fr 3fr auto; gap: 20px; align-items: center; padding: 17px 22px; border: 1px solid rgba(236, 205, 134, .21); background: rgba(9, 7, 5, .58); backdrop-filter: blur(7px); }
.room-desk span { color: var(--gold-hot); font-family: "Courier New", monospace; font-size: 9px; letter-spacing: .1em; }
.room-desk p { margin: 0; color: rgba(246, 226, 191, .66); font-size: 14px; }
.room-desk button { min-width: 114px; height: 33px; border: 1px solid rgba(238, 203, 114, .52); color: var(--gold-hot); background: transparent; font-family: "Courier New", monospace; font-size: 9px; letter-spacing: .07em; transition: color .2s ease, background .2s ease; }
.room-desk button:hover { color: var(--ink); background: var(--gold-hot); }

.final-section { min-height: 920px; padding: 120px 11vw; isolation: isolate; background: radial-gradient(circle at 73% 40%, rgba(229, 175, 40, .22), transparent 32%), linear-gradient(120deg, #0e0c08, #070705); }
.final-grid { opacity: .35; mask-image: linear-gradient(90deg, rgba(0,0,0,.65), transparent 83%); }
.final-section::before { position: absolute; z-index: -1; top: -16%; right: -10%; width: 70vw; height: 70vw; border: 1px solid rgba(244, 203, 100, .12); border-radius: 50%; box-shadow: 0 0 0 80px rgba(244, 203, 100, .025), 0 0 0 160px rgba(244, 203, 100, .018); content: ""; }
.final-copy { position: relative; z-index: 3; width: 55%; }
.final-copy h2 { color: var(--cream); }
.final-copy h2 em { color: var(--gold-hot); }
.final-copy > p:not(.eyebrow) { max-width: 360px; margin: 31px 0 32px; color: rgba(246, 228, 195, .65); font-size: 19px; line-height: 1.4; }
.final-contract { display: flex; align-items: stretch; width: min(100%, 520px); min-height: 68px; margin-bottom: 22px; border: 1px solid rgba(245, 211, 129, .45); background: rgba(13, 11, 7, .48); }
.final-contract > div { display: flex; min-width: 0; flex: 1; flex-direction: column; justify-content: center; gap: 6px; padding: 9px 15px; }
.final-contract > div > span { color: var(--gold-hot); font-family: "Courier New", monospace; font-size: 9px; letter-spacing: .09em; }
.final-copy-button { height: auto; }
.final-bag { position: absolute; z-index: 2; right: 7vw; bottom: -1px; width: min(43vw, 705px); height: 89%; }
.final-bag::before { position: absolute; inset: 8% 2% 0; border-radius: 50%; background: radial-gradient(ellipse, rgba(239, 184, 43, .36), transparent 66%); content: ""; filter: blur(4px); }
.final-bag img { position: absolute; right: 0; bottom: 0; width: 100%; max-height: 100%; object-fit: contain; object-position: bottom right; filter: drop-shadow(-17px 19px 31px rgba(0,0,0,.62)); transform: translate(calc(var(--mouse-x) * 8px), calc(var(--mouse-y) * 7px)); }
.final-mark { position: absolute; top: 21%; right: 41%; z-index: 4; grid-template-columns: repeat(2, 17px); gap: 6px; width: 40px; opacity: .74; }
.final-mark span { width: 17px; height: 17px; }

.site-footer { position: relative; z-index: 1; display: flex; align-items: center; gap: 20px; min-height: 61px; padding: 0 4.55vw; border-top: 1px solid rgba(244, 210, 127, .23); color: rgba(244, 221, 172, .55); background: #070604; font-size: 10px; }
.site-footer > span:nth-child(3) { color: var(--gold-hot); }
.site-footer i { width: 1px; height: 14px; background: rgba(244, 221, 172, .35); }
.site-footer a { margin-left: auto; color: var(--gold-hot); transition: letter-spacing .2s ease; }
.site-footer a:hover { letter-spacing: .16em; }

.toast { position: fixed; z-index: 70; right: 29px; bottom: 29px; padding: 12px 16px; border: 1px solid var(--gold-hot); color: #160f04; background: var(--gold-hot); box-shadow: 0 12px 30px rgba(0,0,0,.34); font-family: "Courier New", monospace; font-size: 10px; font-weight: 700; letter-spacing: .08em; opacity: 0; pointer-events: none; transform: translateY(15px); transition: opacity .2s ease, transform .2s ease; }
.toast.is-visible { opacity: 1; transform: translateY(0); }

.reveal { opacity: 0; transform: translateY(35px); transition: opacity .75s cubic-bezier(.22,.61,.36,1), transform .75s cubic-bezier(.22,.61,.36,1); }
.reveal.is-revealed { opacity: 1; transform: translateY(0); }
.redacted-card.reveal { transform: rotate(-1.3deg) translateY(35px); }
.redacted-card.reveal.is-revealed { transform: rotate(-1.3deg) translateY(0); }
.portrait-slab.reveal { transform: rotate(2deg) translateY(35px); }
.portrait-slab.reveal.is-revealed { transform: rotate(2deg) translateY(0); }

body.is-whispering .noise { opacity: .3; }
body.is-whispering .hero-figure, body.is-whispering .final-bag img { filter: drop-shadow(-17px 15px 26px rgba(0,0,0,.5)) drop-shadow(0 0 38px rgba(250, 203, 64, .45)); }

@keyframes marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@keyframes slow-spin { to { transform: rotate(360deg); } }
@keyframes pulse { 0%, 100% { transform: scale(.72); opacity: .25; } 50% { transform: scale(1.1); opacity: 1; } }
@keyframes figure-breathe { 0%, 100% { margin-bottom: 0; } 50% { margin-bottom: 9px; } }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
