:root {
  --vt4ad1: #6cb0da;
  --v8l98t: #344651;
  --v6ao5n: #1c3f54;
  --vnhv4t: #416f8b;
  --vm4ogr: #8088e5;
  --vhc9hh: #6cb0da;
  --vt42ge: #3e434c;
  --vza2xv: #525860;
  --vkc716: #89919f;
  --vtl08m: #262a31;
  --vru4lu: #282e39;
  --v45uwo: #373e49;
  --vuwzxm: #eeeff2;
  --vut640: #acb1b9;
  --vymfxg: #53c69c;
  --vl3zgz: #e4b558;
  --vwc90a: #de625e;
  --vfeojg: 74.143rem;
  --vhx42r: 65ch;
  --v6r0ys: #373e49;
  --vztvxv: clamp(0.984rem, 3vw, 1.883rem);
  --vv1vpt: 3.872rem;
  --vpu1sv: 'Spectral', system-ui, sans-serif;
  --vp6b5v: 'Inter', system-ui, sans-serif;
  --vs9sdv: 'Spectral', system-ui, sans-serif;
  --vkormq: clamp(2.302rem, 4.5vw, 3.626rem);
  --vwsc67: clamp(1.513rem, 3vw, 2.302rem);
  --vp266s: 1.513rem;
  --vv2rjp: 1.029rem;
  --vyj6qs: 0.84rem;
  --vp0cw6: 1.15;
  --ved0mk: 1.65;
  --ve57ty: 0.512rem;
  --v2zw78: 0.721rem;
  --vumba3: #111111;
  --voqiap: #ffffff;
}
*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { font-family: var(--vp6b5v); font-size: var(--vv2rjp); line-height: var(--ved0mk); color: var(--vuwzxm); background: var(--vru4lu); -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4 { font-family: var(--vpu1sv); line-height: var(--vp0cw6); font-weight: 700; color: var(--vuwzxm); text-wrap: balance; }
h1 { font-size: var(--vkormq); letter-spacing: -0.02em; }
h2 { font-size: var(--vwsc67); margin-top: 2.558rem; margin-bottom: 0.721rem; }
h3 { font-size: var(--vp266s); margin-top: 1.745rem; margin-bottom: 0.512rem; }
p { margin-bottom: 0.984rem; }
a { color: var(--vhc9hh); }
ul, ol { margin: 0 0 0.984rem 1.275rem; }
li { margin-bottom: 0.356rem; }
strong { font-weight: 700; }
code { font-family: ui-monospace, "SF Mono", Menlo, monospace; background: rgba(128, 128, 128, 0.123); border: 1px solid rgba(128, 128, 128, 0.245); border-radius: 4px; padding: 0.096em 0.339em; font-size: 0.892em; color: var(--vuwzxm); }
blockquote { border-left: 3px solid var(--vt4ad1); padding-left: 0.984rem; color: var(--vut640); margin: 0 0 0.984rem; }
img { max-width: 100%; height: auto; display: block; }
sup.v2c78j a { text-decoration: none; color: var(--vm4ogr); font-weight: 600; }
.container { width: 100%; max-width: var(--vfeojg); margin-inline: auto; padding-inline: var(--vztvxv); }
.vhn2im { position: absolute; left: -999px; }
.vhn2im:focus { left: 0.984rem; top: 0.984rem; background: var(--v45uwo); padding: 0.512rem 0.984rem; z-index: 100; }
main { display: block; }
.vtbccn { font-family: var(--vs9sdv); font-weight: 800; font-size: 1.2rem; color: var(--vuwzxm); text-decoration: none; }
.vf06y3 { min-width: 0; }
.vf06y3 ul { display: flex; flex-wrap: wrap; gap: 1.275rem; list-style: none; margin: 0; padding: 0; min-width: 0; }
.vf06y3 li { white-space: nowrap; }
.vf06y3 a { color: var(--vut640); text-decoration: none; font-size: var(--vyj6qs); font-weight: 600; }
.vf06y3 a:hover { color: var(--vhc9hh); }
.v2saac { display: none; background: none; border: 1px solid var(--vza2xv); border-radius: 6px; padding: 0.377rem 0.619rem; font-size: 1.067rem; line-height: 1; cursor: pointer; color: var(--vuwzxm); }
.vlyqij { font-family: var(--vs9sdv); text-transform: uppercase; letter-spacing: 0.121em; font-size: var(--vyj6qs); font-weight: 700; color: var(--vm4ogr); margin-bottom: 0.721rem; }
.vqb1y6 { font-size: 1.2rem; color: var(--vut640); margin-top: 0.984rem; max-width: 61ch; }
.vi239f { display: flex; flex-wrap: wrap; gap: 0.721rem; margin-top: 1.745rem; }
.v1m86o { display: inline-block; padding: 0.9rem 1.519rem; border-radius: var(--ve57ty); font-weight: 700; text-decoration: none; font-size: var(--vyj6qs); transition: transform 0.145s ease, opacity 0.145s ease; }
.v1m86o:hover { transform: translateY(-1px); }
.v28t53 { background: var(--vt4ad1); color: var(--vumba3); }
.vcvvyb { background: transparent; color: var(--vhc9hh); border: 1.5px solid var(--vhc9hh); }
article > section, main > article { padding-block: 0.512rem; }
.vy3gbh { padding-block: 0.984rem 3.071rem; }
.vy3gbh .container > section { max-width: var(--vhx42r); margin-inline: auto; }
.vy3gbh .container > section.vlqo3r, .vy3gbh .container > .vlqo3r { max-width: none; }
.vy3gbh .container > section > .v41fb1,
.vy3gbh .container > section > .v0j28m,
.vy3gbh .container > section > .vxa5af,
.vy3gbh .container > section > .v2et0m,
.vy3gbh .container > section > .vgi6aq {
  --vzpf7s: min(var(--vfeojg) - 2 * var(--vztvxv), 100vw - 2 * var(--vztvxv));
  width: var(--vzpf7s);
  max-width: none;
  margin-inline: calc((100% - var(--vzpf7s)) / 2);
}
@media (max-width: 904px) {
  .vy3gbh .container > section > .v41fb1,
  .vy3gbh .container > section > .v0j28m,
  .vy3gbh .container > section > .vxa5af,
  .vy3gbh .container > section > .v2et0m,
  .vy3gbh .container > section > .vgi6aq { width: 100%; margin-inline: 0; }
}
.vgi6aq img { aspect-ratio: 16 / 7; object-fit: contain; background: var(--v45uwo); }
.vxxs9j img { aspect-ratio: 16 / 6; object-fit: cover; }
.vxa5af { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(1.275rem, 3vw, 2.558rem); align-items: center; background: var(--v6r0ys, var(--v45uwo)); border: 1px solid var(--vza2xv); border-radius: var(--v2zw78); padding: clamp(1.275rem, 3vw, 2.302rem); margin: 2.558rem 0; }
.v821l2 img { border-radius: calc(var(--v2zw78) - 0.261rem); width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.v821l2 figcaption { font-size: var(--vyj6qs); color: var(--vut640); margin-top: 0.619rem; line-height: 1.45; }
.v5mtwl { font-family: var(--vs9sdv); text-transform: uppercase; letter-spacing: 0.096em; font-size: 0.721rem; font-weight: 700; color: var(--vm4ogr); margin-bottom: 0.619rem; }
.vw2mr6 h2, .vw2mr6 h3 { margin-top: 0; }
.vw2mr6 p:last-child { margin-bottom: 0; }
@media (max-width: 724px) { .vxa5af { grid-template-columns: 1fr; } }
.vwf9it { border-left: 3px solid var(--vm4ogr); background: var(--v6r0ys, var(--v45uwo)); border-radius: 0 var(--v2zw78) var(--v2zw78) 0; padding: 1.275rem 1.513rem; margin: 1.883rem 0; }
.vwf9it h2, .vwf9it h3 { margin-top: 0; font-size: 1.062rem; text-transform: uppercase; letter-spacing: 0.083em; color: var(--vut640); }
.vcyisg { list-style: none; margin: 0.721rem 0 0; padding: 0; display: grid; gap: 0.619rem; }
.vcyisg li { margin: 0; padding-left: 1.322rem; position: relative; }
.vcyisg li::before { content: "\2014"; position: absolute; left: 0; color: var(--vm4ogr); font-weight: 700; }
.v0j28m { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 11.234rem), 1fr)); gap: 1px; background: var(--vza2xv); border: 1px solid var(--vza2xv); border-radius: var(--v2zw78); overflow: hidden; margin: 2.302rem 0; }
.vfygk2 { background: var(--v45uwo); padding: 1.322rem 1.275rem; }
.vb4bwz { font-family: var(--vs9sdv); font-size: clamp(1.745rem, 3.5vw, 2.558rem); font-weight: 800; line-height: 1.05; color: var(--vt4ad1); letter-spacing: -0.02em; }
.vsm2o5 { font-size: var(--vyj6qs); color: var(--vut640); margin-top: 0.377rem; line-height: 1.4; }
.v2et0m { background: var(--vt4ad1); color: var(--vumba3); border-radius: var(--v2zw78); padding: clamp(1.513rem, 4vw, 2.692rem); margin: 3.071rem 0 0.984rem; text-align: center; }
.v2et0m h2, .v2et0m h3 { color: var(--vumba3); margin-top: 0; }
.v2et0m p { color: var(--vumba3); opacity: 0.88; margin-inline: auto; max-width: 54ch; }
.v2et0m .vi239f { justify-content: center; }
.v2et0m .vcvvyb { color: var(--vumba3); border-color: var(--vumba3); }
.vgi6aq img { border-radius: var(--v2zw78); width: 100%; }
.vgi6aq figcaption { font-size: var(--vyj6qs); color: var(--vut640); margin-top: 0.619rem; font-style: italic; }
.vxxs9j { margin: 1.513rem 0; }
.vxxs9j img { border-radius: var(--v2zw78); }
.vgce66 { background: var(--v45uwo); border: 1px solid #525860; border-radius: var(--v2zw78); padding: 1.513rem; }
.v41fb1 { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 16.772rem), 1fr)); gap: 1.275rem; margin: 1.513rem 0 1.883rem; }
.v41fb1 .vgce66 { display: flex; flex-direction: column; gap: 0.512rem; }
.v41fb1 .vgce66 img { border-radius: calc(var(--v2zw78) - 0.261rem); margin-bottom: 0.512rem; aspect-ratio: 16 / 10; object-fit: cover; }
.v41fb1 .vgce66 h2, .v41fb1 .vgce66 h3 { margin: 0; font-size: 1.2rem; }
.v41fb1 .vgce66 p { margin: 0; font-size: var(--vyj6qs); color: var(--vut640); }
.v41fb1 .vgce66 .v09or9 { margin-top: auto; padding-top: 0.619rem; font-weight: 700; font-size: var(--vyj6qs); color: var(--vhc9hh); text-decoration: none; }
.v41fb1 .vgce66 .v09or9:hover { text-decoration: underline; }
.vr6hc0 { margin: 1.513rem 0; }
.vr6hc0 img { border-radius: var(--v2zw78); }
.vr6hc0 figcaption { font-size: var(--vyj6qs); color: var(--vut640); margin-top: 0.512rem; font-style: italic; }
.v8tigb { overflow-x: auto; margin: 1.275rem 0 1.745rem; }
table { border-collapse: collapse; width: 100%; font-size: var(--vyj6qs); }
th, td { text-align: left; padding: 0.619rem 0.9rem; border-bottom: 1px solid var(--vza2xv); vertical-align: top; }
thead th { border-bottom: 2px solid var(--vuwzxm); font-family: var(--vpu1sv); }
tbody tr:nth-child(even) { background: rgba(128, 128, 128, 0.09); }
.vfv3nt { padding-left: 1.513rem; }
.vfv3nt li { margin-bottom: 0.721rem; font-size: var(--vyj6qs); color: var(--vut640); }
.vfv3nt li a { word-break: break-word; }
.vxx0wp ul { list-style: none; margin: 0; padding: 0; }
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }
.vn59jf.vw1iyz6 { background: var(--vt42ge); border-bottom: 3px solid var(--vuwzxm); position: sticky; top: 0; z-index: 50; }
.vn59jf.vw1iyz6 .container { display: flex; align-items: baseline; justify-content: space-between; min-height: var(--vv1vpt); gap: 0.984rem; }
.vn59jf.vw1iyz6 .vtbccn { font-size: 1.322rem; letter-spacing: -0.01em; }
.vn59jf.vw1iyz6 .vf06y3 a { text-transform: uppercase; letter-spacing: 0.064em; font-size: 0.803rem; }
@media (max-width: 764px) {
  .vn59jf.vw1iyz6 .v2saac { display: block; }
  .vn59jf.vw1iyz6 .vf06y3 { display: none; position: absolute; top: var(--vv1vpt); left: 0; right: 0; background: var(--vt42ge); border-bottom: 3px solid var(--vuwzxm); padding: 0.984rem var(--vztvxv); z-index: 50; }
  .vn59jf.vw1iyz6 .vf06y3.via3cw { display: block; }
  .vn59jf.vw1iyz6 .vf06y3 ul { flex-direction: column; gap: 0.721rem; }
}
.vax6s0.vcdniz0 { padding: clamp(2.558rem, 6vw, 5.228rem) 0 clamp(1.513rem, 4vw, 3.071rem); }
.vax6s0.vcdniz0 .container { max-width: min(var(--vfeojg), 58.406rem); }
.vax6s0.vcdniz0 h1 { max-width: 23ch; }
.vxeyvx.vjbnqh1 { background: var(--v45uwo); border-top: 1px solid var(--vza2xv); margin-top: 3.872rem; padding-block: 1.883rem; }
.vxeyvx.vjbnqh1 a { color: var(--vut640); text-decoration: none; }
.vxeyvx.vjbnqh1 a:hover { color: var(--vhc9hh); text-decoration: underline; }
.vxeyvx.vjbnqh1 .vcawdq { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.984rem; }
.vxeyvx.vjbnqh1 .vzlcl9 { font-style: italic; color: var(--vut640); margin: 0; max-width: 61ch; }
.vxeyvx.vjbnqh1 .v23v25 { display: flex; flex-wrap: wrap; gap: 0.984rem; font-size: var(--vyj6qs); }
  .vjqpve { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 0.721rem; }
  .vkedk3 { font-size: max(0.759rem, 0.72em); letter-spacing: 0.121em; text-transform: uppercase; color: var(--vut640); }
.vxeyvx.vjbnqh1 .vby07h { width: 100%; margin-top: 0.512rem; font-size: var(--vyj6qs); color: var(--vut640); }

/* ---- per-site theme layer ---- */
/* Pharm Peptides Research Review — boundary register */

:root {
  --pp-rule: rgba(108, 176, 218, 0.34);
  --pp-rule-soft: rgba(238, 239, 242, 0.13);
  --pp-grid: rgba(108, 176, 218, 0.055);
  --pp-shadow: 0 1.75rem 4.5rem rgba(10, 14, 22, 0.28);
  --vhx42r: 69ch;
  --header-height: 5.2rem;
  --v2zw78: 0.15rem;
}

html {
  background: var(--vru4lu);
  scroll-padding-top: 1rem;
}

body {
  background:
    linear-gradient(90deg, transparent calc(50% - 0.5px), rgba(108, 176, 218, 0.035) 50%, transparent calc(50% + 0.5px)),
    var(--vru4lu);
  color: var(--vuwzxm);
  font-feature-settings: "kern" 1, "liga" 1, "tnum" 1;
  letter-spacing: -0.006em;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image:
    linear-gradient(var(--pp-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--pp-grid) 1px, transparent 1px);
  background-size: 5rem 5rem;
  mask-image: linear-gradient(to bottom, transparent 0, black 16rem, transparent 72rem);
  opacity: 0.62;
}

::selection {
  color: var(--vru4lu);
  background: var(--vt4ad1);
}

a {
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
}

p,
li {
  color: var(--vuwzxm);
  text-wrap: pretty;
}

h1,
h2,
h3 {
  font-kerning: normal;
}

h2 {
  font-weight: 600;
  letter-spacing: -0.035em;
}

h3 {
  font-weight: 600;
  letter-spacing: -0.025em;
}

main {
  overflow: hidden;
}

.vhn2im:focus {
  left: 1rem;
  top: 1rem;
  border: 2px solid var(--vt4ad1);
  border-radius: 0;
  color: var(--vuwzxm);
  background: var(--v45uwo);
  box-shadow: 0 0 0 4px var(--vru4lu);
  font-weight: 700;
}

/* Header: compact research masthead */
.vn59jf {
  position: relative;
  border-top: 4px solid var(--vt4ad1);
  border-bottom: 1px solid var(--pp-rule-soft);
  background:
    linear-gradient(90deg, rgba(108, 176, 218, 0.08), transparent 38%),
    var(--v45uwo);
  box-shadow: 0 0.75rem 2.5rem rgba(10, 14, 22, 0.18);
}

.vn59jf .container.container {
  min-height: 5.2rem;
  padding-block: 0.55rem;
  align-items: center;
  gap: 1.4rem;
}

.vtbccn {
  position: relative;
  display: inline-grid;
  grid-template-columns: 2.85rem minmax(10rem, 14rem);
  align-items: center;
  gap: 0.75rem;
  color: var(--vuwzxm);
  font-size: 1.02rem;
  font-weight: 600;
  line-height: 1.03;
  letter-spacing: -0.045em;
}

.vtbccn::before {
  content: "P/P";
  display: grid;
  width: 2.72rem;
  height: 2.72rem;
  place-items: center;
  border: 1px solid var(--vt4ad1);
  color: var(--vt4ad1);
  background:
    linear-gradient(135deg, transparent 0 46%, rgba(128, 136, 229, 0.72) 46% 51%, transparent 51%),
    var(--vru4lu);
  font: 700 0.68rem/1 var(--vp6b5v);
  letter-spacing: 0.04em;
  box-shadow: inset 0 0 0 4px var(--v45uwo);
}

.vtbccn::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -0.48rem;
  width: calc(100% - 3.6rem);
  height: 1px;
  background: linear-gradient(90deg, var(--vt4ad1), var(--vm4ogr) 56%, transparent);
}

.vf06y3 ul {
  align-items: center;
  gap: 0.3rem clamp(0.45rem, 0.7vw, 0.72rem);
}

.vn59jf .container .vf06y3 a {
  position: relative;
  padding: 0.45rem 0;
  color: var(--vut640);
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.06em;
}

.vf06y3 a::after {
  content: "";
  position: absolute;
  right: 50%;
  bottom: 0.15rem;
  left: 50%;
  height: 1px;
  background: var(--vt4ad1);
  transition: right 160ms ease, left 160ms ease;
}

.vf06y3 a:hover,
.vf06y3 a:focus-visible {
  color: var(--vuwzxm);
}

.vf06y3 a:hover::after,
.vf06y3 a:focus-visible::after {
  right: 0;
  left: 0;
}

.v2saac {
  width: 2.7rem;
  height: 2.7rem;
  border-color: var(--vt4ad1);
  border-radius: 0;
  color: var(--vt4ad1);
  background: var(--vru4lu);
}

/* Hero: asymmetric evidence plate */
.vax6s0 {
  position: relative;
  isolation: isolate;
  min-height: clamp(31rem, 52vw, 44rem);
  padding: 0;
  overflow: hidden;
  border-bottom: 1px solid var(--pp-rule);
  background:
    linear-gradient(116deg, var(--vru4lu) 0 62%, rgba(55, 62, 73, 0.96) 62% 100%);
}

.vax6s0::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  width: 41%;
  height: 100%;
  background:
    repeating-linear-gradient(90deg, transparent 0 4.9rem, rgba(108, 176, 218, 0.1) 4.9rem calc(4.9rem + 1px)),
    repeating-linear-gradient(0deg, transparent 0 4.9rem, rgba(108, 176, 218, 0.1) 4.9rem calc(4.9rem + 1px)),
    linear-gradient(155deg, rgba(128, 136, 229, 0.16), transparent 55%);
  clip-path: polygon(18% 0, 100% 0, 100% 100%, 0 100%);
}

.vax6s0::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: clamp(2rem, 7vw, 8rem);
  bottom: clamp(2rem, 8vw, 6rem);
  width: clamp(8rem, 17vw, 15rem);
  aspect-ratio: 1;
  border: 1px solid var(--vt4ad1);
  border-radius: 50%;
  background:
    linear-gradient(transparent calc(50% - 0.5px), rgba(108, 176, 218, 0.55) 50%, transparent calc(50% + 0.5px)),
    linear-gradient(90deg, transparent calc(50% - 0.5px), rgba(108, 176, 218, 0.55) 50%, transparent calc(50% + 0.5px));
  box-shadow: 0 0 0 1.25rem rgba(128, 136, 229, 0.05);
  opacity: 0.72;
}

.vax6s0 .container {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(17rem, 5fr);
  grid-template-rows: auto auto auto auto;
  column-gap: clamp(2rem, 6vw, 6rem);
  align-content: center;
  max-width: var(--vfeojg);
  min-height: inherit;
  padding-top: clamp(4rem, 9vw, 7.5rem);
  padding-bottom: clamp(4.5rem, 10vw, 8rem);
}

.vax6s0 .container > .vlyqij {
  grid-column: 1;
  grid-row: 1;
}

.vax6s0 .container > h1 {
  grid-column: 1;
  grid-row: 2;
}

.vax6s0 .container > .vqb1y6 {
  grid-column: 1;
  grid-row: 3;
}

.vax6s0 .container > .vi239f {
  grid-column: 1;
  grid-row: 4;
}

.vlyqij {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin-bottom: 1.1rem;
  color: var(--vt4ad1);
  font: 600 0.69rem/1.4 var(--vp6b5v);
  letter-spacing: 0.19em;
}

.vlyqij::before {
  content: "";
  width: 2.8rem;
  height: 1px;
  background: linear-gradient(90deg, var(--vm4ogr), var(--vt4ad1));
}

.vax6s0 h1 {
  max-width: 12ch;
  margin: 0;
  font-size: clamp(3rem, 6.5vw, 6.25rem);
  font-weight: 600;
  line-height: 0.94;
  letter-spacing: -0.067em;
}

.vax6s0 h1::after {
  content: "";
  display: block;
  width: min(12rem, 38%);
  height: 4px;
  margin-top: 1.6rem;
  background: linear-gradient(90deg, var(--vt4ad1) 0 28%, var(--vm4ogr) 28% 100%);
}

.vqb1y6 {
  max-width: 56ch;
  margin: 1.35rem 0 0;
  color: var(--vut640);
  font-size: clamp(1.02rem, 1.5vw, 1.22rem);
  line-height: 1.62;
}

.vi239f {
  justify-content: flex-start;
  margin-top: 1.8rem;
}

.v1m86o {
  border-radius: 0;
  font-size: 0.72rem;
  letter-spacing: 0.105em;
  text-transform: uppercase;
}

.v28t53 {
  color: var(--vru4lu);
  background: var(--vt4ad1);
  box-shadow: 0.42rem 0.42rem 0 rgba(128, 136, 229, 0.36);
}

.vcvvyb {
  border-color: var(--vt4ad1);
  color: var(--vt4ad1);
  background: rgba(40, 46, 57, 0.72);
}

.v1m86o:focus-visible,
.v09or9:focus-visible,
a:focus-visible {
  outline: 2px solid var(--vt4ad1);
  outline-offset: 4px;
}

.vxxs9j {
  position: relative;
  grid-column: 2;
  grid-row: 1 / 5;
  align-self: center;
  width: calc(100% + clamp(2rem, 7vw, 7rem));
  margin: 0;
  border: 1px solid var(--vt4ad1);
  border-right: 0;
  border-radius: 0;
  background: var(--v45uwo);
  box-shadow: -1.2rem 1.2rem 0 rgba(128, 136, 229, 0.15), var(--pp-shadow);
}

.vxxs9j::before {
  content: "IMAGE / METABOLIC FIELD";
  position: absolute;
  z-index: 2;
  top: -2.25rem;
  left: -1px;
  color: var(--vut640);
  font: 600 0.62rem/1 var(--vp6b5v);
  letter-spacing: 0.17em;
}

.vxxs9j img {
  width: 100%;
  border-radius: 0;
  filter: saturate(0.72) contrast(1.08) brightness(0.82);
}

/* Four-file card register */
.v41fb1 {
  counter-reset: file-card;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 1px;
  margin: clamp(2.5rem, 6vw, 5.5rem) 0 1rem;
  padding: 1px;
  border: 1px solid var(--pp-rule);
  border-radius: 0;
  background: var(--pp-rule);
}

.v41fb1 > .vgce66 {
  counter-increment: file-card;
  grid-column: span 6;
}

.v41fb1 > .vgce66:nth-child(1),
.v41fb1 > .vgce66:nth-child(4) {
  grid-column: span 7;
}

.v41fb1 > .vgce66:nth-child(2),
.v41fb1 > .vgce66:nth-child(3) {
  grid-column: span 5;
}

.vgce66 {
  position: relative;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  color: var(--vuwzxm);
  background:
    linear-gradient(135deg, rgba(108, 176, 218, 0.07), transparent 45%),
    var(--v45uwo);
  box-shadow: none;
}

.vgce66::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  left: 0;
  width: 3px;
  background: linear-gradient(var(--vt4ad1), var(--vm4ogr));
}

.vgce66::after {
  content: "FILE 0" counter(file-card);
  position: absolute;
  z-index: 2;
  top: 1rem;
  right: 1rem;
  padding: 0.25rem 0.42rem;
  border: 1px solid var(--vt4ad1);
  color: var(--vuwzxm);
  background: rgba(40, 46, 57, 0.92);
  font: 600 0.6rem/1 var(--vp6b5v);
  letter-spacing: 0.13em;
}

.vgce66 img {
  width: 100%;
  border-radius: 0;
  filter: saturate(0.72) contrast(1.08) brightness(0.78);
}

.vgce66 h3 {
  margin-top: 0.35rem;
  color: var(--vuwzxm);
  font-size: clamp(1.45rem, 2.6vw, 2.05rem);
}

.vgce66 p {
  color: var(--vuwzxm);
  line-height: 1.62;
}

.v09or9 {
  position: relative;
  width: max-content;
  color: var(--vt4ad1);
  letter-spacing: 0.045em;
  text-transform: uppercase;
}

.v09or9::before {
  content: "[";
  margin-right: 0.25rem;
  color: var(--vut640);
}

.v09or9::after {
  content: "]";
  margin-left: 0.25rem;
  color: var(--vut640);
}

/* Body: indexed dossier rows */
.vy3gbh {
  padding-top: 0;
  padding-bottom: 2rem;
}

.vy3gbh > .container {
  counter-reset: evidence-section;
}

.vy3gbh .container > section {
  position: relative;
  counter-increment: evidence-section;
  display: grid;
  grid-template-columns: minmax(10rem, 0.72fr) minmax(0, 1.72fr);
  column-gap: clamp(2rem, 6vw, 6.5rem);
  max-width: none;
  margin: 0;
  padding: clamp(3.4rem, 7vw, 6rem) 0;
  border-top: 1px solid var(--pp-rule-soft);
}

.vy3gbh .container > section::after {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  width: 4rem;
  height: 1px;
  background: var(--vt4ad1);
}

.vy3gbh .container > section > h2 {
  grid-column: 1;
  align-self: start;
  max-width: 12ch;
  margin: 0;
  font-size: clamp(1.65rem, 3vw, 2.55rem);
  line-height: 1.04;
}

.vy3gbh .container > section > h2::before {
  content: "0" counter(evidence-section) " /";
  display: block;
  margin-bottom: 0.9rem;
  color: var(--vt4ad1);
  font: 600 0.66rem/1 var(--vp6b5v);
  letter-spacing: 0.16em;
}

.vy3gbh .container > section > :not(h2) {
  grid-column: 2;
}

.vy3gbh .container > section > p,
.vy3gbh .container > section > ul,
.vy3gbh .container > section > ol,
.vy3gbh .container > section > blockquote {
  max-width: var(--vhx42r);
}

.vy3gbh .container > section > p {
  color: var(--vuwzxm);
  line-height: 1.78;
}

.vy3gbh .container > section > p:first-of-type {
  font-size: 1.08rem;
}

.vy3gbh .container > section:first-of-type {
  margin-top: clamp(2.4rem, 6vw, 5rem);
  padding: clamp(2rem, 5vw, 3.5rem);
  border: 1px solid var(--pp-rule);
  border-top: 4px solid var(--vt4ad1);
  background:
    linear-gradient(135deg, rgba(128, 136, 229, 0.09), transparent 42%),
    var(--v45uwo);
  box-shadow: var(--pp-shadow);
}

.vy3gbh .container > section:first-of-type::before {
  content: "FIELD NOTE / PLAIN RECORD";
  position: absolute;
  top: -1.85rem;
  right: 0;
  color: var(--vut640);
  font: 600 0.62rem/1 var(--vp6b5v);
  letter-spacing: 0.16em;
}

.vy3gbh strong {
  color: var(--vuwzxm);
}

.vy3gbh ul,
.vy3gbh ol {
  padding-left: 1.2rem;
}

.vy3gbh li::marker {
  color: var(--vt4ad1);
}

blockquote {
  border: 1px solid var(--pp-rule);
  border-left: 4px solid var(--vt4ad1);
  border-radius: 0;
  padding: 1.25rem 1.5rem;
  color: var(--vuwzxm);
  background: var(--v45uwo);
}

.v2c78j {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.55rem;
  min-height: 1.55rem;
  margin-inline: 0.08rem;
  border: 1px solid var(--pp-rule);
  border-radius: 50%;
  vertical-align: 0.08em;
  line-height: 1;
}

.v2c78j a {
  color: var(--vt4ad1);
  font-size: 0.67rem;
}

.vr6hc0,
.vgi6aq {
  position: relative;
  overflow: hidden;
  margin-top: 2.3rem;
  border: 1px solid var(--pp-rule);
  border-radius: 0;
  background: var(--v45uwo);
  box-shadow: 0.8rem 0.8rem 0 rgba(128, 136, 229, 0.1);
}

.vr6hc0::before,
.vgi6aq::before {
  content: "COMPOUND FIELD";
  position: absolute;
  z-index: 2;
  top: 0.85rem;
  left: 0.85rem;
  padding: 0.32rem 0.48rem;
  border: 1px solid var(--vt4ad1);
  color: var(--vuwzxm);
  background: rgba(40, 46, 57, 0.92);
  font: 600 0.59rem/1 var(--vp6b5v);
  letter-spacing: 0.14em;
}

.vr6hc0 img,
.vgi6aq img {
  width: 100%;
  border-radius: 0;
  filter: saturate(0.72) contrast(1.07) brightness(0.82);
}

/* Tables: controlled comparison matrix */
.v8tigb {
  max-width: none;
  margin: 0.5rem 0 1rem;
  border: 1px solid var(--pp-rule);
  background: var(--v45uwo);
  box-shadow: 0.7rem 0.7rem 0 rgba(108, 176, 218, 0.08);
}

table {
  min-width: 46rem;
  color: var(--vuwzxm);
  background: var(--v45uwo);
  font-size: 0.82rem;
}

th,
td {
  border-right: 1px solid var(--pp-rule-soft);
  border-bottom: 1px solid var(--pp-rule-soft);
  padding: 1rem;
  color: var(--vuwzxm);
  line-height: 1.58;
}

thead th {
  border-bottom: 0;
  color: var(--vru4lu);
  background: var(--vt4ad1);
  font-family: var(--vp6b5v);
  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

tbody tr:nth-child(even) {
  background: var(--vru4lu);
}

/* Optional renderer modules share the register language */
.vwf9it {
  border: 1px solid var(--pp-rule);
  border-left: 4px solid var(--vt4ad1);
  border-radius: 0;
  color: var(--vuwzxm);
  background: var(--v45uwo);
  box-shadow: 0.65rem 0.65rem 0 rgba(128, 136, 229, 0.1);
}

.vwf9it h2,
.vwf9it h3,
.vwf9it li {
  color: var(--vuwzxm);
}

.vcyisg li::before {
  content: "+";
  color: var(--vt4ad1);
}

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

.vfygk2 {
  color: var(--vuwzxm);
  background: var(--v45uwo);
}

.vb4bwz {
  color: var(--vt4ad1);
  font-weight: 600;
}

.vsm2o5 {
  color: var(--vuwzxm);
}

.v2et0m {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--pp-rule);
  border-radius: 0;
  color: var(--vuwzxm);
  background:
    linear-gradient(120deg, rgba(128, 136, 229, 0.2), transparent 48%),
    var(--v45uwo);
}

.v2et0m::after {
  content: "";
  position: absolute;
  right: -5rem;
  bottom: -5rem;
  width: 13rem;
  aspect-ratio: 1;
  border: 1.2rem solid rgba(108, 176, 218, 0.12);
  border-radius: 50%;
}

.v2et0m h2,
.v2et0m h3,
.v2et0m p {
  color: var(--vuwzxm);
}

/* Reference register */
.vfv3nt {
  display: grid;
  gap: 0;
  margin-top: 2rem;
  padding-left: 0;
  list-style-position: inside;
  border: 1px solid var(--pp-rule);
  background: var(--v45uwo);
}

.vfv3nt li {
  min-width: 0;
  margin: 0;
  padding: 1.2rem 1.35rem;
  border-bottom: 1px solid var(--pp-rule-soft);
  color: var(--vuwzxm);
  overflow-wrap: anywhere;
}

.vfv3nt li:last-child {
  border-bottom: 0;
}

.vfv3nt li::marker {
  color: var(--vt4ad1);
  font-weight: 700;
}

.vfv3nt a {
  color: var(--vt4ad1);
  overflow-wrap: anywhere;
}

/* Footer: final register strip */
.vxeyvx {
  position: relative;
  margin-top: 0;
  padding-top: clamp(2.7rem, 6vw, 5rem);
  padding-bottom: 2.2rem;
  border-top: 4px solid var(--vt4ad1);
  color: var(--vuwzxm);
  background:
    linear-gradient(90deg, rgba(108, 176, 218, 0.07), transparent 45%),
    var(--v45uwo);
}

.vxeyvx::before {
  content: "PPRR / EVIDENCE BOUNDARY REGISTER";
  position: absolute;
  top: 1.05rem;
  right: max(1rem, calc((100vw - var(--vfeojg)) / 2));
  color: var(--vut640);
  font: 600 0.6rem/1 var(--vp6b5v);
  letter-spacing: 0.17em;
}

.vcawdq {
  align-items: flex-start;
  padding-bottom: 2rem;
  border-bottom: 1px solid var(--pp-rule-soft);
}

.vzlcl9 {
  max-width: 39ch;
  margin: 0;
  color: var(--vuwzxm);
  font-family: var(--vpu1sv);
  font-size: clamp(1.25rem, 2.3vw, 1.8rem);
  font-style: normal;
  line-height: 1.28;
  letter-spacing: -0.03em;
}

.vxx0wp {
  align-items: flex-start;
  gap: 1.5rem 2.1rem;
}

.vjqpve {
  display: grid;
  align-items: start;
  gap: 0.42rem;
  padding-left: 1rem;
  border-left: 1px solid var(--pp-rule);
}

.vkedk3 {
  margin-bottom: 0.2rem;
  color: var(--vt4ad1);
  font-size: 0.61rem;
  letter-spacing: 0.15em;
}

.vxeyvx a {
  color: var(--vut640);
}

.vxeyvx a:hover,
.vxeyvx a:focus-visible {
  color: var(--vuwzxm);
}

.vby07h {
  margin-top: 1rem;
  color: var(--vut640);
  font-size: 0.7rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

@media (max-width: 980px) {
  .vtbccn {
    grid-template-columns: 2.6rem minmax(8rem, 11rem);
    font-size: 0.9rem;
  }

  .vtbccn::before {
    width: 2.45rem;
    height: 2.45rem;
  }

  .vf06y3 ul {
    column-gap: 0.58rem;
  }

  .vn59jf .container .vf06y3 a {
    font-size: 0.59rem;
  }

  .vax6s0 .container {
    grid-template-columns: minmax(0, 8fr) minmax(14rem, 4fr);
    column-gap: 2rem;
  }

  .vy3gbh .container > section {
    grid-template-columns: minmax(9rem, 0.58fr) minmax(0, 1.42fr);
    column-gap: 2.5rem;
  }
}

@media (max-width: 760px) {
  body::before {
    background-size: 3rem 3rem;
  }

  .vn59jf .container {
    min-height: 4.65rem;
  }

  .vtbccn {
    grid-template-columns: 2.45rem minmax(0, 12rem);
    max-width: calc(100% - 3.5rem);
    font-size: 0.9rem;
  }

  .vtbccn::before {
    width: 2.25rem;
    height: 2.25rem;
  }

  .vtbccn::after {
    width: calc(100% - 3.2rem);
  }

  .vn59jf .container .vf06y3 a {
    width: max-content;
    max-width: 100%;
    color: var(--vuwzxm);
    font-size: 0.72rem;
  }

  .vax6s0 {
    min-height: auto;
    background: var(--vru4lu);
  }

  .vax6s0::before {
    width: 100%;
    clip-path: polygon(46% 0, 100% 0, 100% 100%, 15% 100%);
    opacity: 0.6;
  }

  .vax6s0::after {
    display: none;
  }

  .vax6s0 .container {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto;
    gap: 0;
    padding-top: 4rem;
    padding-bottom: 3.5rem;
  }

  .vax6s0 .container > .vlyqij,
  .vax6s0 .container > h1,
  .vax6s0 .container > .vqb1y6,
  .vax6s0 .container > .vi239f,
  .vxxs9j {
    grid-column: 1;
  }

  .vax6s0 .container > .vlyqij {
    grid-row: 1;
  }

  .vax6s0 .container > h1 {
    grid-row: 2;
  }

  .vax6s0 .container > .vqb1y6 {
    grid-row: 3;
  }

  .vax6s0 .container > .vi239f {
    grid-row: 4;
  }

  .vax6s0 h1 {
    max-width: 14ch;
    font-size: clamp(2.7rem, 14vw, 4.5rem);
  }

  .vxxs9j {
    grid-row: 5;
    width: 100%;
    margin-top: 4rem;
    border-right: 1px solid var(--vt4ad1);
    box-shadow: 0.65rem 0.65rem 0 rgba(128, 136, 229, 0.14);
  }

  .v41fb1 {
    grid-template-columns: minmax(0, 1fr);
  }

  .v41fb1 > .vgce66,
  .v41fb1 > .vgce66:nth-child(1),
  .v41fb1 > .vgce66:nth-child(2),
  .v41fb1 > .vgce66:nth-child(3),
  .v41fb1 > .vgce66:nth-child(4) {
    grid-column: 1;
  }

  .vy3gbh .container > section,
  .vy3gbh .container > section:first-of-type {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.35rem;
    margin-right: 0;
    margin-left: 0;
    padding: 3rem 0;
  }

  .vy3gbh .container > section:first-of-type {
    margin-top: 3.3rem;
    padding: 1.7rem;
  }

  .vy3gbh .container > section > h2,
  .vy3gbh .container > section > :not(h2) {
    grid-column: 1;
  }

  .vy3gbh .container > section > h2 {
    max-width: 18ch;
  }

  .vy3gbh .container > section:first-of-type::before {
    left: 0;
    right: auto;
    max-width: 100%;
  }

  .v8tigb {
    width: 100%;
    overflow-x: auto;
  }

  .vfv3nt li {
    padding: 1rem;
    overflow-wrap: anywhere;
  }

  .vxeyvx::before {
    right: 1rem;
    left: 1rem;
    overflow-wrap: anywhere;
    text-align: right;
  }

  .vcawdq {
    gap: 2rem;
  }

  .vxx0wp {
    gap: 1.5rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  * {
    scroll-behavior: auto;
    transition: none;
  }
}
