:root {
  --vn2tyu: #589bda;
  --v5efv0: #1a2128;
  --vu2lnc: #0d1a26;
  --vjfx0q: #3a6082;
  --vfml3y: #6cd7e5;
  --vi0fhs: #589bda;
  --vwcgwr: #1c242c;
  --v9uomk: #2f3b46;
  --vbsnft: #8494a4;
  --v4xm65: #0a0d10;
  --vtl1bn: #0c1217;
  --v6awz7: #171f27;
  --vl62m7: #e6ebef;
  --v0cqy9: #9ba9b5;
  --vsav43: #53c69c;
  --v7cclo: #e4b558;
  --vi9rvf: #de625e;
  --vvnk7f: 74.134rem;
  --vlp4mw: 71ch;
  --vovc8j: #171f27;
  --v37dvi: clamp(0.982rem, 3vw, 1.92rem);
  --vrucmo: 3.992rem;
  --vwr4we: 'Bitter', system-ui, sans-serif;
  --v836ms: 'Inter', system-ui, sans-serif;
  --v3y9y6: 'Bitter', system-ui, sans-serif;
  --vi1efx: clamp(2.348rem, 4.5vw, 3.602rem);
  --vwp3cc: clamp(1.413rem, 3vw, 2.348rem);
  --v16lhz: 1.413rem;
  --vk0xlq: 1.018rem;
  --vaq9op: 0.865rem;
  --vnrrfj: 1.15;
  --vhpvr7: 1.65;
  --vll7x9: 0.525rem;
  --v9aiar: 0.718rem;
  --vnjd9m: #111111;
  --vasdhg: #ffffff;
}
*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { font-family: var(--v836ms); font-size: var(--vk0xlq); line-height: var(--vhpvr7); color: var(--vl62m7); background: var(--vtl1bn); -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4 { font-family: var(--vwr4we); line-height: var(--vnrrfj); font-weight: 700; color: var(--vl62m7); text-wrap: balance; }
h1 { font-size: var(--vi1efx); letter-spacing: -0.02em; }
h2 { font-size: var(--vwp3cc); margin-top: 2.352rem; margin-bottom: 0.718rem; }
h3 { font-size: var(--v16lhz); margin-top: 1.747rem; margin-bottom: 0.525rem; }
p { margin-bottom: 0.982rem; }
a { color: var(--vi0fhs); }
ul, ol { margin: 0 0 0.982rem 1.192rem; }
li { margin-bottom: 0.333rem; }
strong { font-weight: 700; }
code { font-family: ui-monospace, "SF Mono", Menlo, monospace; background: rgba(128, 128, 128, 0.145); border: 1px solid rgba(128, 128, 128, 0.237); border-radius: 4px; padding: 0.097em 0.35em; font-size: 0.852em; color: var(--vl62m7); }
blockquote { border-left: 3px solid var(--vn2tyu); padding-left: 0.982rem; color: var(--v0cqy9); margin: 0 0 0.982rem; }
img { max-width: 100%; height: auto; display: block; }
sup.kx9jp6 a { text-decoration: none; color: var(--vfml3y); font-weight: 600; }
.container { width: 100%; max-width: var(--vvnk7f); margin-inline: auto; padding-inline: var(--v37dvi); }
.kykcpp { position: absolute; left: -999px; }
.kykcpp:focus { left: 0.982rem; top: 0.982rem; background: var(--v6awz7); padding: 0.525rem 0.982rem; z-index: 100; }
main { display: block; }
.koy59i { font-family: var(--v3y9y6); font-weight: 800; font-size: 1.242rem; color: var(--vl62m7); text-decoration: none; }
.kn4qqi { min-width: 0; }
.kn4qqi ul { display: flex; flex-wrap: wrap; gap: 1.192rem; list-style: none; margin: 0; padding: 0; min-width: 0; }
.kn4qqi li { white-space: nowrap; }
.kn4qqi a { color: var(--v0cqy9); text-decoration: none; font-size: var(--vaq9op); font-weight: 600; }
.kn4qqi a:hover { color: var(--vi0fhs); }
.klzi8h { display: none; background: none; border: 1px solid var(--v9uomk); border-radius: 6px; padding: 0.377rem 0.624rem; font-size: 1.091rem; line-height: 1; cursor: pointer; color: var(--vl62m7); }
.ktbyhk { font-family: var(--v3y9y6); text-transform: uppercase; letter-spacing: 0.124em; font-size: var(--vaq9op); font-weight: 700; color: var(--vfml3y); margin-bottom: 0.718rem; }
.k4npn9 { font-size: 1.242rem; color: var(--v0cqy9); margin-top: 0.982rem; max-width: 61ch; }
.k1yjz0 { display: flex; flex-wrap: wrap; gap: 0.718rem; margin-top: 1.747rem; }
.kf3tmj { display: inline-block; padding: 0.845rem 1.599rem; border-radius: var(--vll7x9); font-weight: 700; text-decoration: none; font-size: var(--vaq9op); transition: transform 0.152s ease, opacity 0.152s ease; }
.kf3tmj:hover { transform: translateY(-1.5px); }
.k93dmc { background: var(--vn2tyu); color: var(--vnjd9m); }
.klg950 { background: transparent; color: var(--vi0fhs); border: 1.5px solid var(--vi0fhs); }
article > section, main > article { padding-block: 0.525rem; }
.kap39i { padding-block: 0.982rem 2.984rem; }
.kap39i .container > section { max-width: var(--vlp4mw); margin-inline: auto; }
.kap39i .container > section.ktjipa, .kap39i .container > .ktjipa { max-width: none; }
.kap39i .container > section > .ktkatm,
.kap39i .container > section > .k4sdmx,
.kap39i .container > section > .k60v78,
.kap39i .container > section > .kuqo1z,
.kap39i .container > section > .knvwd7 {
  --vpfok9: min(var(--vvnk7f) - 2 * var(--v37dvi), 100vw - 2 * var(--v37dvi));
  width: var(--vpfok9);
  max-width: none;
  margin-inline: calc((100% - var(--vpfok9)) / 2);
}
@media (max-width: 905px) {
  .kap39i .container > section > .ktkatm,
  .kap39i .container > section > .k4sdmx,
  .kap39i .container > section > .k60v78,
  .kap39i .container > section > .kuqo1z,
  .kap39i .container > section > .knvwd7 { width: 100%; margin-inline: 0; }
}
.knvwd7 img { aspect-ratio: 16 / 7; object-fit: contain; background: var(--v6awz7); }
.km7dlk img { aspect-ratio: 16 / 6; object-fit: cover; }
.k60v78 { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(1.192rem, 3vw, 2.352rem); align-items: center; background: var(--vovc8j, var(--v6awz7)); border: 1px solid var(--v9uomk); border-radius: var(--v9aiar); padding: clamp(1.192rem, 3vw, 2.348rem); margin: 2.352rem 0; }
.kshcit img { border-radius: calc(var(--v9aiar) - 0.242rem); width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.kshcit figcaption { font-size: var(--vaq9op); color: var(--v0cqy9); margin-top: 0.624rem; line-height: 1.45; }
.kjlgcm { font-family: var(--v3y9y6); text-transform: uppercase; letter-spacing: 0.097em; font-size: 0.718rem; font-weight: 700; color: var(--vfml3y); margin-bottom: 0.624rem; }
.k6hf8j h2, .k6hf8j h3 { margin-top: 0; }
.k6hf8j p:last-child { margin-bottom: 0; }
@media (max-width: 725px) { .k60v78 { grid-template-columns: 1fr; } }
.kiib28 { border-left: 3px solid var(--vfml3y); background: var(--vovc8j, var(--v6awz7)); border-radius: 0 var(--v9aiar) var(--v9aiar) 0; padding: 1.192rem 1.413rem; margin: 1.92rem 0; }
.kiib28 h2, .kiib28 h3 { margin-top: 0; font-size: 0.999rem; text-transform: uppercase; letter-spacing: 0.079em; color: var(--v0cqy9); }
.kp51an { list-style: none; margin: 0.718rem 0 0; padding: 0; display: grid; gap: 0.624rem; }
.kp51an li { margin: 0; padding-left: 1.327rem; position: relative; }
.kp51an li::before { content: "\2014"; position: absolute; left: 0; color: var(--vfml3y); font-weight: 700; }
.k4sdmx { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 10.749rem), 1fr)); gap: 1px; background: var(--v9uomk); border: 1px solid var(--v9uomk); border-radius: var(--v9aiar); overflow: hidden; margin: 2.348rem 0; }
.kz054r { background: var(--v6awz7); padding: 1.327rem 1.192rem; }
.kwts7m { font-family: var(--v3y9y6); font-size: clamp(1.747rem, 3.5vw, 2.352rem); font-weight: 800; line-height: 1.05; color: var(--vn2tyu); letter-spacing: -0.02em; }
.kd44io { font-size: var(--vaq9op); color: var(--v0cqy9); margin-top: 0.377rem; line-height: 1.4; }
.kuqo1z { background: var(--vn2tyu); color: var(--vnjd9m); border-radius: var(--v9aiar); padding: clamp(1.413rem, 4vw, 2.889rem); margin: 2.984rem 0 0.982rem; text-align: center; }
.kuqo1z h2, .kuqo1z h3 { color: var(--vnjd9m); margin-top: 0; }
.kuqo1z p { color: var(--vnjd9m); opacity: 0.88; margin-inline: auto; max-width: 58ch; }
.kuqo1z .k1yjz0 { justify-content: center; }
.kuqo1z .klg950 { color: var(--vnjd9m); border-color: var(--vnjd9m); }
.knvwd7 img { border-radius: var(--v9aiar); width: 100%; }
.knvwd7 figcaption { font-size: var(--vaq9op); color: var(--v0cqy9); margin-top: 0.624rem; font-style: italic; }
.km7dlk { margin: 1.413rem 0; }
.km7dlk img { border-radius: var(--v9aiar); }
.kqgocz { background: var(--v6awz7); border: 1px solid #2f3b46; border-radius: var(--v9aiar); padding: 1.413rem; }
.ktkatm { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15.618rem), 1fr)); gap: 1.192rem; margin: 1.413rem 0 1.92rem; }
.ktkatm .kqgocz { display: flex; flex-direction: column; gap: 0.525rem; }
.ktkatm .kqgocz img { border-radius: calc(var(--v9aiar) - 0.242rem); margin-bottom: 0.525rem; aspect-ratio: 16 / 10; object-fit: cover; }
.ktkatm .kqgocz h2, .ktkatm .kqgocz h3 { margin: 0; font-size: 1.242rem; }
.ktkatm .kqgocz p { margin: 0; font-size: var(--vaq9op); color: var(--v0cqy9); }
.ktkatm .kqgocz .kwarui { margin-top: auto; padding-top: 0.624rem; font-weight: 700; font-size: var(--vaq9op); color: var(--vi0fhs); text-decoration: none; }
.ktkatm .kqgocz .kwarui:hover { text-decoration: underline; }
.klanbx { margin: 1.413rem 0; }
.klanbx img { border-radius: var(--v9aiar); }
.klanbx figcaption { font-size: var(--vaq9op); color: var(--v0cqy9); margin-top: 0.525rem; font-style: italic; }
.kqu7o6 { overflow-x: auto; margin: 1.192rem 0 1.747rem; }
table { border-collapse: collapse; width: 100%; font-size: var(--vaq9op); }
th, td { text-align: left; padding: 0.624rem 0.845rem; border-bottom: 1px solid var(--v9uomk); vertical-align: top; }
thead th { border-bottom: 2px solid var(--vl62m7); font-family: var(--vwr4we); }
tbody tr:nth-child(even) { background: rgba(128, 128, 128, 0.087); }
.ke0itm { padding-left: 1.413rem; }
.ke0itm li { margin-bottom: 0.718rem; font-size: var(--vaq9op); color: var(--v0cqy9); }
.ke0itm li a { word-break: break-word; }
.k0cbve ul { list-style: none; margin: 0; padding: 0; }
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }
.km1gx4.ksknrw1 { border-bottom: 1px solid var(--v9uomk); background: var(--v6awz7); }
.km1gx4.ksknrw1 .container { display: flex; flex-direction: column; align-items: center; gap: 0.624rem; padding-block: 0.982rem; text-align: center; }
.km1gx4.ksknrw1 .koy59i { font-size: 1.413rem; }
.km1gx4.ksknrw1 .kn4qqi ul { flex-wrap: wrap; justify-content: center; gap: 0.718rem 1.413rem; }
.klfg05.kqdy8q1 { padding: clamp(2.352rem, 6vw, 5.001rem) 0 clamp(1.413rem, 4vw, 2.984rem); text-align: center; }
.klfg05.kqdy8q1 .container { max-width: 47.882rem; }
.klfg05.kqdy8q1 h1 { margin-inline: auto; max-width: 19ch; }
.klfg05.kqdy8q1 .k4npn9 { margin-inline: auto; }
.klfg05.kqdy8q1 .k1yjz0 { justify-content: center; }
.klfg05.kqdy8q1 .km7dlk { margin-inline: auto; }
.kp9kka.ksrmkq3 { background: var(--v6awz7); border-top: 2px solid var(--vl62m7); margin-top: 3.992rem; padding-block: 2.352rem; }
.kp9kka.ksrmkq3 a { color: var(--v0cqy9); text-decoration: none; }
.kp9kka.ksrmkq3 a:hover { color: var(--vi0fhs); text-decoration: underline; }
.kp9kka.ksrmkq3 .kx8ne6 { font-style: italic; color: var(--v0cqy9); margin-bottom: 1.413rem; max-width: 61ch; }
.kp9kka.ksrmkq3 .k0cbve { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 1.413rem; }
.kp9kka.ksrmkq3 .k0cbve > div { border-left: 1px solid var(--v9uomk); padding-left: 0.982rem; }
.kp9kka.ksrmkq3 .k0cbve h2 { font-size: var(--vaq9op); text-transform: uppercase; letter-spacing: 0.097em; margin: 0 0 0.624rem; color: var(--vl62m7); }
.kp9kka.ksrmkq3 .k0cbve li { margin-bottom: 0.377rem; font-size: var(--vaq9op); }
.kp9kka.ksrmkq3 .k2yuyi { margin-top: 1.747rem; font-size: var(--vaq9op); color: var(--v0cqy9); }

/* ---- per-site theme layer ---- */
/* Research Grade Peptide Review — analytical ledger on obsidian */
:root {
  --rgpr-ink: #e6ebef;
  --rgpr-muted: #9ba9b5;
  --rgpr-rule: #2f3b46;
  --rgpr-panel: #171f27;
  --rgpr-deep: #0c1217;
  --rgpr-blue: #589bda;
  --rgpr-cyan: #6cd7e5;
  --rgpr-glow: rgba(108, 215, 229, 0.12);
}

html {
  background: var(--rgpr-deep);
}

body {
  background:
    linear-gradient(rgba(88, 155, 218, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(88, 155, 218, 0.018) 1px, transparent 1px),
    var(--rgpr-deep);
  background-size: 100% 3.25rem, 3.25rem 100%, auto;
  color: var(--rgpr-ink);
  letter-spacing: 0.002em;
}

::selection {
  background: var(--rgpr-cyan);
  color: #0c1217;
}

a {
  text-underline-offset: 0.19em;
  text-decoration-thickness: 0.08em;
}

a:focus-visible,
button:focus-visible {
  outline: 2px solid var(--rgpr-cyan);
  outline-offset: 4px;
}

.kykcpp:focus {
  left: 1rem;
  top: 1rem;
  border: 1px solid var(--rgpr-cyan);
  border-radius: 0;
  color: var(--rgpr-ink);
  box-shadow: 0 0 0 5px rgba(12, 18, 23, 0.88);
}

/* Chrome: a two-line laboratory masthead */
.km1gx4.ksknrw1 {
  position: relative;
  z-index: 40;
  border: 0;
  border-top: 3px solid var(--rgpr-cyan);
  border-bottom: 1px solid var(--rgpr-rule);
  background: rgba(12, 18, 23, 0.97);
  box-shadow: 0 12px 35px rgba(0, 0, 0, 0.18);
}

.km1gx4.ksknrw1 .container {
  align-items: stretch;
  gap: 0.85rem;
  padding-top: 1rem;
  padding-bottom: 0;
  text-align: left;
}

.koy59i {
  position: relative;
  display: grid;
  grid-template-columns: 2.65rem minmax(0, auto);
  align-items: center;
  align-self: flex-start;
  gap: 0.78rem;
  min-width: 0;
  max-width: 27rem;
  color: var(--rgpr-ink);
  font-family: var(--v3y9y6);
  font-size: clamp(1rem, 2vw, 1.32rem);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -0.035em;
}

.koy59i::before {
  content: "R+";
  display: grid;
  width: 2.65rem;
  height: 2.65rem;
  place-items: center;
  border: 1px solid var(--rgpr-cyan);
  background:
    linear-gradient(135deg, transparent 46%, rgba(108, 215, 229, 0.36) 47%, rgba(108, 215, 229, 0.36) 50%, transparent 51%),
    #101b24;
  color: var(--rgpr-cyan);
  font-family: var(--v836ms);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  box-shadow: 5px 5px 0 rgba(88, 155, 218, 0.16);
}

.koy59i::after {
  content: "RESEARCH / EVIDENCE / REVIEW";
  position: absolute;
  left: 3.44rem;
  bottom: -0.92rem;
  color: var(--rgpr-cyan);
  font-family: var(--v836ms);
  font-size: 0.54rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.16em;
}

.kn4qqi {
  border-top: 1px solid var(--rgpr-rule);
}

.km1gx4.ksknrw1 .kn4qqi ul {
  display: grid;
  grid-template-columns: repeat(10, auto);
  justify-content: space-between;
  gap: 0.5rem;
  padding-block: 0.64rem 0.72rem;
}

.km1gx4.ksknrw1 .kn4qqi a {
  position: relative;
  display: inline-block;
  color: var(--rgpr-muted);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.035em;
}

.km1gx4.ksknrw1 .kn4qqi a::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -0.72rem;
  left: 0;
  height: 2px;
  background: var(--rgpr-cyan);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 160ms ease;
}

.km1gx4.ksknrw1 .kn4qqi a:hover {
  color: var(--rgpr-ink);
}

.km1gx4.ksknrw1 .kn4qqi a:hover::after,
.km1gx4.ksknrw1 .kn4qqi a:focus-visible::after {
  transform: scaleX(1);
}

.klzi8h {
  border-color: var(--rgpr-rule);
  border-radius: 0;
  background: #101922;
  color: var(--rgpr-cyan);
}

/* Hero: asymmetric evidence plate */
.klfg05.kqdy8q1 {
  position: relative;
  overflow: hidden;
  min-height: 30rem;
  padding: clamp(3.2rem, 7vw, 7.5rem) 0 clamp(3rem, 6vw, 6rem);
  border-bottom: 1px solid var(--rgpr-rule);
  background:
    radial-gradient(circle at 84% 22%, rgba(108, 215, 229, 0.13), transparent 19rem),
    linear-gradient(115deg, #0c1217 0%, #101922 62%, #0b1721 100%);
  text-align: left;
}

.klfg05.kqdy8q1::before {
  content: "";
  position: absolute;
  inset: 1.4rem 1.4rem auto auto;
  width: min(31vw, 28rem);
  aspect-ratio: 1;
  border: 1px solid rgba(108, 215, 229, 0.16);
  background:
    linear-gradient(90deg, transparent 49.7%, rgba(108, 215, 229, 0.18) 50%, transparent 50.3%),
    linear-gradient(transparent 49.7%, rgba(108, 215, 229, 0.18) 50%, transparent 50.3%);
  transform: rotate(7deg);
  pointer-events: none;
}

.klfg05.kqdy8q1::after {
  content: "RGPR / ANALYTICAL NOTE";
  position: absolute;
  right: 1.1rem;
  bottom: 1.5rem;
  color: var(--rgpr-muted);
  font-size: 0.58rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  writing-mode: vertical-rl;
}

.klfg05.kqdy8q1 .container {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: clamp(1rem, 2.4vw, 2rem);
  max-width: var(--vvnk7f);
}

.klfg05.kqdy8q1 .ktbyhk,
.klfg05.kqdy8q1 h1,
.klfg05.kqdy8q1 .k4npn9,
.klfg05.kqdy8q1 .k1yjz0 {
  grid-column: 1 / 8;
}

.klfg05.kqdy8q1 .ktbyhk {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  margin-bottom: 1.25rem;
  color: var(--rgpr-cyan);
  font-family: var(--v836ms);
  font-size: 0.68rem;
  letter-spacing: 0.17em;
}

.klfg05.kqdy8q1 .ktbyhk::before {
  content: "+";
  display: grid;
  width: 1.45rem;
  height: 1.45rem;
  place-items: center;
  border: 1px solid var(--rgpr-cyan);
  font-size: 0.85rem;
  line-height: 1;
}

.klfg05.kqdy8q1 h1 {
  max-width: 12ch;
  margin: 0;
  font-size: clamp(2.7rem, 6vw, 5.65rem);
  font-weight: 600;
  line-height: 0.98;
  letter-spacing: -0.052em;
  text-wrap: balance;
}

.klfg05.kqdy8q1 .k4npn9 {
  max-width: 58ch;
  margin: 1.5rem 0 0;
  color: var(--rgpr-muted);
  font-size: clamp(1.02rem, 1.6vw, 1.22rem);
  line-height: 1.7;
}

.klfg05.kqdy8q1 .k1yjz0 {
  justify-content: flex-start;
  margin-top: 2rem;
}

.klfg05.kqdy8q1 .km7dlk {
  position: relative;
  grid-column: 8 / 13;
  grid-row: 1 / 6;
  align-self: stretch;
  margin: -1.5rem 0;
  border: 1px solid var(--rgpr-rule);
  border-radius: 0;
  background: #101922;
  box-shadow: 0 0 0 9px rgba(12, 18, 23, 0.7), 22px 22px 0 rgba(88, 155, 218, 0.09);
}

.klfg05.kqdy8q1 .km7dlk::before,
.klfg05.kqdy8q1 .km7dlk::after {
  content: "";
  position: absolute;
  z-index: 2;
  width: 1rem;
  height: 1rem;
  border-color: var(--rgpr-cyan);
  pointer-events: none;
}

.klfg05.kqdy8q1 .km7dlk::before {
  top: -1px;
  left: -1px;
  border-top: 2px solid;
  border-left: 2px solid;
}

.klfg05.kqdy8q1 .km7dlk::after {
  right: -1px;
  bottom: -1px;
  border-right: 2px solid;
  border-bottom: 2px solid;
}

.klfg05.kqdy8q1 .km7dlk img {
  width: 100%;
  height: 100%;
  min-height: 29rem;
  border-radius: 0;
  object-fit: cover;
  filter: saturate(0.82) contrast(1.08);
  opacity: 0.82;
}

.klfg05.kqdy8q1:not(:has(.km7dlk)) h1 {
  grid-column: 1 / 10;
  max-width: 15ch;
}

.klfg05.kqdy8q1:not(:has(.km7dlk)) .k4npn9 {
  grid-column: 1 / 8;
}

/* Buttons use the same square registration-mark language */
.kf3tmj {
  position: relative;
  border-radius: 0;
  letter-spacing: 0.025em;
  transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

.kf3tmj::before {
  content: "+";
  margin-right: 0.5rem;
  font-weight: 600;
}

.k93dmc {
  border: 1px solid var(--rgpr-blue);
  background: var(--rgpr-blue);
  color: #0c1217;
  box-shadow: 5px 5px 0 rgba(108, 215, 229, 0.16);
}

.klg950 {
  border: 1px solid var(--rgpr-rule);
  background: rgba(23, 31, 39, 0.74);
  color: var(--rgpr-ink);
}

.kf3tmj:hover {
  transform: translate(-2px, -2px);
  box-shadow: 7px 7px 0 rgba(108, 215, 229, 0.15);
}

/* Reading column and numbered evidence sections */
.kap39i {
  padding: 0 0 clamp(3rem, 7vw, 7rem);
}

.kap39i > .container {
  counter-reset: rgpr-section;
}

.kap39i .container > section {
  position: relative;
  counter-increment: rgpr-section;
  max-width: 75ch;
  padding: clamp(2.6rem, 5vw, 4.75rem) 0;
  border-top: 1px solid var(--rgpr-rule);
}

.kap39i .container > section:first-of-type {
  max-width: 84ch;
  margin-top: clamp(2rem, 5vw, 4.5rem);
  padding: clamp(1.5rem, 4vw, 2.8rem);
  border: 1px solid var(--rgpr-rule);
  border-left: 4px solid var(--rgpr-cyan);
  background:
    linear-gradient(135deg, rgba(88, 155, 218, 0.1), transparent 45%),
    var(--rgpr-panel);
  box-shadow: 12px 12px 0 rgba(88, 155, 218, 0.055);
}

.kap39i .container > section h2 {
  position: relative;
  margin: 0 0 1.35rem;
  padding-left: 2.8rem;
  font-size: clamp(1.55rem, 3.5vw, 2.35rem);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -0.025em;
}

.kap39i .container > section h2::before {
  content: "+" counter(rgpr-section, decimal-leading-zero);
  position: absolute;
  top: 0.12em;
  left: 0;
  color: var(--rgpr-cyan);
  font-family: var(--v836ms);
  font-size: 0.58rem;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.06em;
}

.kap39i .container > section h2::after {
  content: "";
  display: block;
  width: clamp(2.5rem, 8vw, 5rem);
  height: 1px;
  margin-top: 0.72rem;
  background: linear-gradient(90deg, var(--rgpr-blue), transparent);
}

.kap39i .container > section p {
  color: var(--rgpr-ink);
  line-height: 1.78;
}

.kap39i .container > section p + p {
  margin-top: 1.05rem;
}

.kap39i strong {
  color: #f5f8fa;
  font-weight: 650;
}

.kap39i section a:not(.kf3tmj) {
  color: var(--rgpr-cyan);
  text-decoration-color: rgba(108, 215, 229, 0.42);
}

.kx9jp6 a {
  display: inline-grid;
  min-width: 1.45rem;
  min-height: 1.45rem;
  place-items: center;
  margin-inline: 0.08rem;
  border: 1px solid rgba(108, 215, 229, 0.28);
  background: rgba(108, 215, 229, 0.075);
  color: var(--rgpr-cyan);
  font-size: 0.66rem;
  line-height: 1;
}

/* Compound file cards */
.ktkatm {
  counter-reset: rgpr-card;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin: clamp(2rem, 5vw, 4.5rem) 0;
  border: 1px solid var(--rgpr-rule);
  background: var(--rgpr-rule);
  border-radius: 0;
}

.ktkatm .kqgocz {
  position: relative;
  counter-increment: rgpr-card;
  min-height: 16rem;
  padding: clamp(1.4rem, 3vw, 2.2rem);
  border: 0;
  border-radius: 0;
  background:
    radial-gradient(circle at 100% 0%, rgba(108, 215, 229, 0.08), transparent 11rem),
    var(--rgpr-panel);
  transition: background 180ms ease, transform 180ms ease;
}

.ktkatm .kqgocz::before {
  content: "FILE / " counter(rgpr-card, decimal-leading-zero);
  color: var(--rgpr-cyan);
  font-size: 0.62rem;
  font-weight: 600;
  letter-spacing: 0.14em;
}

.ktkatm .kqgocz::after {
  content: "+";
  position: absolute;
  top: 1.25rem;
  right: 1.35rem;
  display: grid;
  width: 1.55rem;
  height: 1.55rem;
  place-items: center;
  border: 1px solid var(--rgpr-rule);
  color: var(--rgpr-muted);
  font-size: 0.72rem;
}

.ktkatm .kqgocz:hover {
  z-index: 1;
  background:
    radial-gradient(circle at 100% 0%, rgba(108, 215, 229, 0.16), transparent 13rem),
    #1a2530;
  transform: translateY(-3px);
}

.ktkatm .kqgocz h3 {
  margin-top: 2rem;
  font-size: clamp(1.45rem, 3vw, 2.05rem);
  font-weight: 600;
  letter-spacing: -0.035em;
}

.ktkatm .kqgocz p {
  max-width: 48ch;
  color: var(--rgpr-muted);
  font-size: 0.93rem;
  line-height: 1.65;
}

.kwarui {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  color: var(--rgpr-cyan);
  text-decoration: none;
}

.kwarui::after {
  content: "↗";
  font-size: 1rem;
}

/* Figures are evidence plates, not decorative rounded cards */
.klanbx {
  position: relative;
  overflow: hidden;
  margin-top: 2.4rem;
  border: 1px solid var(--rgpr-rule);
  border-radius: 0;
  background: #101922;
  box-shadow: 10px 10px 0 rgba(88, 155, 218, 0.06);
}

.klanbx::after {
  content: "FIG / COMPOUND FIELD";
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 0.36rem 0.65rem;
  background: rgba(12, 18, 23, 0.88);
  color: var(--rgpr-cyan);
  font-size: 0.56rem;
  font-weight: 600;
  letter-spacing: 0.13em;
}

.klanbx img {
  width: 100%;
  border-radius: 0;
  filter: saturate(0.85) contrast(1.06);
}

/* Wide comparison register */
.kqu7o6 {
  width: min(72rem, calc(100vw - 2rem));
  margin: 2rem 0 2rem 50%;
  overflow-x: auto;
  border: 1px solid var(--rgpr-rule);
  background: #101820;
  transform: translateX(-50%);
  scrollbar-color: var(--rgpr-blue) #101820;
}

.kqu7o6 table {
  min-width: 62rem;
  font-size: 0.82rem;
  line-height: 1.55;
}

.kqu7o6 th,
.kqu7o6 td {
  padding: 1rem;
  border-right: 1px solid var(--rgpr-rule);
  border-bottom: 1px solid var(--rgpr-rule);
}

.kqu7o6 th:last-child,
.kqu7o6 td:last-child {
  border-right: 0;
}

.kqu7o6 thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  border-bottom: 2px solid var(--rgpr-cyan);
  background: #162533;
  color: var(--rgpr-ink);
  font-family: var(--v836ms);
  font-size: 0.65rem;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.kqu7o6 tbody tr:nth-child(even) {
  background: rgba(88, 155, 218, 0.05);
}

.kqu7o6 tbody tr:hover {
  background: rgba(108, 215, 229, 0.07);
}

/* Reference ledger */
.ke0itm {
  display: grid;
  gap: 0;
  max-width: 90ch;
  margin: 2.5rem auto 0;
  padding: 0;
  list-style: none;
  counter-reset: rgpr-ref;
  border-top: 1px solid var(--rgpr-rule);
}

.ke0itm li {
  position: relative;
  counter-increment: rgpr-ref;
  min-width: 0;
  margin: 0;
  padding: 1.15rem 3.4rem 1.15rem 4rem;
  border-bottom: 1px solid var(--rgpr-rule);
  color: var(--rgpr-muted);
  font-size: 0.82rem;
  line-height: 1.58;
  overflow-wrap: anywhere;
  transition: background 150ms ease;
}

.ke0itm li::before {
  content: counter(rgpr-ref, decimal-leading-zero);
  position: absolute;
  top: 1.1rem;
  left: 1rem;
  display: grid;
  width: 2rem;
  height: 2rem;
  place-items: center;
  border: 1px solid var(--rgpr-rule);
  color: var(--rgpr-cyan);
  font-size: 0.62rem;
  font-weight: 600;
}

.ke0itm li:hover,
.ke0itm li:target {
  background: rgba(88, 155, 218, 0.07);
}

.ke0itm li > a:last-child {
  position: absolute;
  top: 1.3rem;
  right: 1rem;
  display: grid;
  width: 1.7rem;
  height: 1.7rem;
  place-items: center;
  border: 1px solid var(--rgpr-rule);
  color: var(--rgpr-cyan);
  text-decoration: none;
}

/* Optional renderer modules, kept in the same register system */
.kiib28 {
  border: 1px solid var(--rgpr-rule);
  border-left: 4px solid var(--rgpr-cyan);
  border-radius: 0;
  background: var(--rgpr-panel);
  box-shadow: 8px 8px 0 rgba(88, 155, 218, 0.06);
}

.kp51an li::before {
  content: "+";
  color: var(--rgpr-cyan);
}

.k4sdmx {
  gap: 1px;
  border: 1px solid var(--rgpr-rule);
  border-radius: 0;
  background: var(--rgpr-rule);
}

.kz054r {
  background: #121c25;
}

.kwts7m {
  color: var(--rgpr-cyan);
  font-weight: 600;
}

.kd44io {
  color: var(--rgpr-muted);
  letter-spacing: 0.055em;
  text-transform: uppercase;
}

.kuqo1z {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--rgpr-blue);
  border-radius: 0;
  background: linear-gradient(120deg, #172b3c, #101922);
  color: var(--rgpr-ink);
  text-align: left;
}

.kuqo1z::before {
  content: "+";
  position: absolute;
  top: 1rem;
  right: 1rem;
  display: grid;
  width: 2rem;
  height: 2rem;
  place-items: center;
  border: 1px solid var(--rgpr-cyan);
  color: var(--rgpr-cyan);
}

.kuqo1z h2,
.kuqo1z h3,
.kuqo1z p {
  color: var(--rgpr-ink);
}

.kuqo1z .k1yjz0 {
  justify-content: flex-start;
}

.k60v78 {
  border: 1px solid var(--rgpr-rule);
  border-radius: 0;
  background: var(--rgpr-panel);
}

.kshcit img {
  border-radius: 0;
}

.kjlgcm {
  color: var(--rgpr-cyan);
  letter-spacing: 0.12em;
}

/* Footer: archive colophon */
.kp9kka.ksrmkq3 {
  position: relative;
  margin-top: 0;
  padding: clamp(2.5rem, 6vw, 5.5rem) 0 2rem;
  border-top: 1px solid var(--rgpr-rule);
  background:
    linear-gradient(90deg, rgba(88, 155, 218, 0.055) 1px, transparent 1px),
    #0f171e;
  background-size: 25% 100%, auto;
}

.kp9kka.ksrmkq3::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  width: min(38%, 31rem);
  height: 3px;
  background: var(--rgpr-cyan);
}

.kp9kka.ksrmkq3 .kx8ne6 {
  position: relative;
  max-width: 38ch;
  margin: 0 0 clamp(2.5rem, 5vw, 4.5rem);
  padding-left: 3.4rem;
  color: var(--rgpr-ink);
  font-family: var(--vwr4we);
  font-size: clamp(1.25rem, 2.7vw, 2rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.42;
}

.kp9kka.ksrmkq3 .kx8ne6::before {
  content: "+";
  position: absolute;
  top: 0.12rem;
  left: 0;
  display: grid;
  width: 2.25rem;
  height: 2.25rem;
  place-items: center;
  border: 1px solid var(--rgpr-cyan);
  color: var(--rgpr-cyan);
  font-family: var(--v836ms);
  font-size: 0.85rem;
}

.kp9kka.ksrmkq3 .k0cbve {
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: clamp(1.5rem, 4vw, 4rem);
  padding-top: 1.5rem;
  border-top: 1px solid var(--rgpr-rule);
}

.kp9kka.ksrmkq3 .k0cbve > div {
  border-left: 0;
  padding-left: 0;
}

.kp9kka.ksrmkq3 .k0cbve h2,
.kp9kka.ksrmkq3 .kwfzcq {
  margin-bottom: 0.9rem;
  color: var(--rgpr-cyan);
  font-family: var(--v836ms);
  font-size: 0.62rem;
  font-weight: 600;
  letter-spacing: 0.16em;
}

.kp9kka.ksrmkq3 .k0cbve a {
  color: var(--rgpr-muted);
}

.kp9kka.ksrmkq3 .k0cbve a:hover {
  color: var(--rgpr-ink);
  text-decoration-color: var(--rgpr-cyan);
}

.kp9kka.ksrmkq3 .k2yuyi {
  margin-top: 3rem;
  padding-top: 1rem;
  border-top: 1px solid var(--rgpr-rule);
  color: var(--rgpr-muted);
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

@media (max-width: 980px) {
  .km1gx4.ksknrw1 .kn4qqi ul {
    grid-template-columns: repeat(5, auto);
    justify-content: start;
    gap: 0.55rem 1.4rem;
  }

  .klfg05.kqdy8q1 .ktbyhk,
  .klfg05.kqdy8q1 h1,
  .klfg05.kqdy8q1 .k4npn9,
  .klfg05.kqdy8q1 .k1yjz0 {
    grid-column: 1 / 13;
  }

  .klfg05.kqdy8q1 h1,
  .klfg05.kqdy8q1:not(:has(.km7dlk)) h1 {
    max-width: 14ch;
  }

  .klfg05.kqdy8q1 .km7dlk {
    grid-column: 1 / 13;
    grid-row: auto;
    height: min(54vw, 30rem);
    margin: 3rem 0 0;
  }

  .klfg05.kqdy8q1 .km7dlk img {
    min-height: 0;
  }
}

@media (max-width: 760px) {
  body {
    background-size: 100% 2.75rem, 2.75rem 100%, auto;
  }

  .km1gx4.ksknrw1 .container {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.85rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
  }

  .koy59i {
    grid-column: 1;
    align-self: center;
    font-size: 0.98rem;
  }

  .koy59i::before {
    width: 2.3rem;
    height: 2.3rem;
  }

  .koy59i::after {
    display: none;
  }

  .klzi8h {
    display: block;
    grid-column: 2;
    justify-self: end;
    width: 2.5rem;
    height: 2.5rem;
  }

  .km1gx4.ksknrw1 .kn4qqi {
    display: none;
    grid-column: 1 / -1;
    width: 100%;
    border-top: 1px solid var(--rgpr-rule);
  }

  .km1gx4.ksknrw1 .kn4qqi.kh1g6t {
    display: block;
  }

  .km1gx4.ksknrw1 .kn4qqi ul {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 0.55rem 0 0;
  }

  .km1gx4.ksknrw1 .kn4qqi li {
    margin: 0;
    border-bottom: 1px solid rgba(47, 59, 70, 0.75);
  }

  .km1gx4.ksknrw1 .kn4qqi a {
    display: block;
    padding: 0.72rem 0.25rem;
    font-size: 0.78rem;
  }

  .km1gx4.ksknrw1 .kn4qqi a::after {
    display: none;
  }

  .klfg05.kqdy8q1 {
    min-height: 0;
    padding: 3.4rem 0 3.2rem;
  }

  .klfg05.kqdy8q1::before {
    right: -5rem;
    width: 15rem;
    opacity: 0.55;
  }

  .klfg05.kqdy8q1::after {
    display: none;
  }

  .klfg05.kqdy8q1 .container {
    display: block;
  }

  .klfg05.kqdy8q1 h1,
  .klfg05.kqdy8q1:not(:has(.km7dlk)) h1 {
    max-width: 14ch;
    font-size: clamp(2.45rem, 12.8vw, 4rem);
  }

  .klfg05.kqdy8q1 .k4npn9,
  .klfg05.kqdy8q1:not(:has(.km7dlk)) .k4npn9 {
    max-width: 38rem;
  }

  .klfg05.kqdy8q1 .km7dlk {
    height: 62vw;
    min-height: 15rem;
    margin-top: 2.4rem;
    box-shadow: 8px 8px 0 rgba(88, 155, 218, 0.09);
  }

  .ktkatm {
    grid-template-columns: 1fr;
  }

  .ktkatm .kqgocz {
    min-height: 0;
  }

  .kap39i .container > section,
  .kap39i .container > section:first-of-type {
    padding-top: 2.35rem;
    padding-bottom: 2.35rem;
  }

  .kap39i .container > section:first-of-type {
    padding-right: 1.2rem;
    padding-left: 1.2rem;
  }

  .kap39i .container > section h2 {
    padding-left: 2.3rem;
  }

  .kqu7o6 {
    width: calc(100vw - 2rem);
  }

  .ke0itm li {
    padding: 1rem 2.8rem 1rem 3.35rem;
  }

  .ke0itm li::before {
    left: 0.65rem;
  }

  .ke0itm li > a:last-child {
    right: 0.55rem;
  }

  .kp9kka.ksrmkq3 .k0cbve {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 420px) {
  .koy59i {
    grid-template-columns: 2.1rem minmax(0, 1fr);
    gap: 0.6rem;
    font-size: 0.88rem;
  }

  .koy59i::before {
    width: 2.1rem;
    height: 2.1rem;
    font-size: 0.65rem;
  }

  .klfg05.kqdy8q1 .k1yjz0 {
    display: grid;
    grid-template-columns: 1fr;
  }

  .klfg05.kqdy8q1 .kf3tmj {
    width: 100%;
    text-align: center;
  }

  .kp9kka.ksrmkq3 .kx8ne6 {
    padding-left: 0;
    padding-top: 3.2rem;
  }
}
