:root {
  --v162kq: #e27d79;
  --v7u6a0: #2c1c1c;
  --v2p0x0: #2a0f0e;
  --vxbt06: #944542;
  --vpa7vu: #8ea1eb;
  --vsj7x0: #e27d79;
  --v95g47: #211834;
  --vtyqp4: #352852;
  --vveg1p: #8a7cab;
  --v3djah: #0d0915;
  --vt692n: #110b1d;
  --vq80qv: #1c142e;
  --vuo3wb: #eceaf0;
  --vhht9p: #a6a0b6;
  --vssebz: #53c69c;
  --vue8ag: #e4b558;
  --vew9e7: #de625e;
  --vhc6fj: 74.929rem;
  --v4jfro: 66ch;
  --v2utqv: #1c142e;
  --v06nfm: clamp(1.044rem, 3vw, 2.074rem);
  --vqg2xg: 3.795rem;
  --v15gu2: 'Red Hat Display', system-ui, sans-serif;
  --vn74e0: 'Red Hat Text', system-ui, sans-serif;
  --vj786i: 'Red Hat Display', system-ui, sans-serif;
  --v48jo9: clamp(2.338rem, 4.5vw, 3.406rem);
  --vkpirs: clamp(1.539rem, 3vw, 2.338rem);
  --vtjqqb: 1.539rem;
  --vpdbju: 1.077rem;
  --vh0obp: 0.905rem;
  --v0exv7: 1.15;
  --v0d6q7: 1.65;
  --vfjti1: 0.493rem;
  --vrjqu7: 0.751rem;
  --veqnam: #111111;
  --vqpn68: #ffffff;
}
*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { font-family: var(--vn74e0); font-size: var(--vpdbju); line-height: var(--v0d6q7); color: var(--vuo3wb); background: var(--vt692n); -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4 { font-family: var(--v15gu2); line-height: var(--v0exv7); font-weight: 700; color: var(--vuo3wb); text-wrap: balance; }
h1 { font-size: var(--v48jo9); letter-spacing: -0.02em; }
h2 { font-size: var(--vkpirs); margin-top: 2.398rem; margin-bottom: 0.751rem; }
h3 { font-size: var(--vtjqqb); margin-top: 1.806rem; margin-bottom: 0.493rem; }
p { margin-bottom: 1.044rem; }
a { color: var(--vsj7x0); }
ul, ol { margin: 0 0 1.044rem 1.186rem; }
li { margin-bottom: 0.371rem; }
strong { font-weight: 700; }
code { font-family: ui-monospace, "SF Mono", Menlo, monospace; background: rgba(128, 128, 128, 0.146); border: 1px solid rgba(128, 128, 128, 0.235); border-radius: 4px; padding: 0.099em 0.362em; font-size: 0.864em; color: var(--vuo3wb); }
blockquote { border-left: 3px solid var(--v162kq); padding-left: 1.044rem; color: var(--vhht9p); margin: 0 0 1.044rem; }
img { max-width: 100%; height: auto; display: block; }
sup.o4u6pa a { text-decoration: none; color: var(--vpa7vu); font-weight: 600; }
.container { width: 100%; max-width: var(--vhc6fj); margin-inline: auto; padding-inline: var(--v06nfm); }
.o1jbu9 { position: absolute; left: -999px; }
.o1jbu9:focus { left: 1.044rem; top: 1.044rem; background: var(--vq80qv); padding: 0.493rem 1.044rem; z-index: 100; }
main { display: block; }
.oozn5e { font-family: var(--vj786i); font-weight: 800; font-size: 1.139rem; color: var(--vuo3wb); text-decoration: none; }
.ounat2 { min-width: 0; }
.ounat2 ul { display: flex; flex-wrap: wrap; gap: 1.186rem; list-style: none; margin: 0; padding: 0; min-width: 0; }
.ounat2 li { white-space: nowrap; }
.ounat2 a { color: var(--vhht9p); text-decoration: none; font-size: var(--vh0obp); font-weight: 600; }
.ounat2 a:hover { color: var(--vsj7x0); }
.o5u5t9 { display: none; background: none; border: 1px solid var(--vtyqp4); border-radius: 6px; padding: 0.39rem 0.599rem; font-size: 1.151rem; line-height: 1; cursor: pointer; color: var(--vuo3wb); }
.omber8 { font-family: var(--vj786i); text-transform: uppercase; letter-spacing: 0.12em; font-size: var(--vh0obp); font-weight: 700; color: var(--vpa7vu); margin-bottom: 0.751rem; }
.ow3tsx { font-size: 1.139rem; color: var(--vhht9p); margin-top: 1.044rem; max-width: 63ch; }
.o08e6w { display: flex; flex-wrap: wrap; gap: 0.751rem; margin-top: 1.806rem; }
.o7u9uf { display: inline-block; padding: 0.833rem 1.546rem; border-radius: var(--vfjti1); font-weight: 700; text-decoration: none; font-size: var(--vh0obp); transition: transform 0.158s ease, opacity 0.158s ease; }
.o7u9uf:hover { transform: translateY(-1px); }
.okgbxc { background: var(--v162kq); color: var(--veqnam); }
.ocu4lk { background: transparent; color: var(--vsj7x0); border: 1.5px solid var(--vsj7x0); }
article > section, main > article { padding-block: 0.493rem; }
.okgw0y { padding-block: 1.044rem 2.864rem; }
.okgw0y .container > section { max-width: var(--v4jfro); margin-inline: auto; }
.okgw0y .container > section.o5cyd6, .okgw0y .container > .o5cyd6 { max-width: none; }
.okgw0y .container > section > .o0rqme,
.okgw0y .container > section > .ogrbod,
.okgw0y .container > section > .og6sug,
.okgw0y .container > section > .o95zt7,
.okgw0y .container > section > .o1bejz {
  --vsw6t9: min(var(--vhc6fj) - 2 * var(--v06nfm), 100vw - 2 * var(--v06nfm));
  width: var(--vsw6t9);
  max-width: none;
  margin-inline: calc((100% - var(--vsw6t9)) / 2);
}
@media (max-width: 903px) {
  .okgw0y .container > section > .o0rqme,
  .okgw0y .container > section > .ogrbod,
  .okgw0y .container > section > .og6sug,
  .okgw0y .container > section > .o95zt7,
  .okgw0y .container > section > .o1bejz { width: 100%; margin-inline: 0; }
}
.o1bejz img { aspect-ratio: 16 / 7; object-fit: contain; background: var(--vq80qv); }
.ohdh3g img { aspect-ratio: 16 / 6; object-fit: cover; }
.og6sug { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(1.186rem, 3vw, 2.398rem); align-items: center; background: var(--v2utqv, var(--vq80qv)); border: 1px solid var(--vtyqp4); border-radius: var(--vrjqu7); padding: clamp(1.186rem, 3vw, 2.338rem); margin: 2.398rem 0; }
.okte5l img { border-radius: calc(var(--vrjqu7) - 0.25rem); width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.okte5l figcaption { font-size: var(--vh0obp); color: var(--vhht9p); margin-top: 0.599rem; line-height: 1.45; }
.o2qdlu { font-family: var(--vj786i); text-transform: uppercase; letter-spacing: 0.099em; font-size: 0.751rem; font-weight: 700; color: var(--vpa7vu); margin-bottom: 0.599rem; }
.ofmk47 h2, .ofmk47 h3 { margin-top: 0; }
.ofmk47 p:last-child { margin-bottom: 0; }
@media (max-width: 723px) { .og6sug { grid-template-columns: 1fr; } }
.o276e4 { border-left: 3px solid var(--vpa7vu); background: var(--v2utqv, var(--vq80qv)); border-radius: 0 var(--vrjqu7) var(--vrjqu7) 0; padding: 1.186rem 1.539rem; margin: 2.074rem 0; }
.o276e4 h2, .o276e4 h3 { margin-top: 0; font-size: 1.107rem; text-transform: uppercase; letter-spacing: 0.085em; color: var(--vhht9p); }
.ocm8aj { list-style: none; margin: 0.751rem 0 0; padding: 0; display: grid; gap: 0.599rem; }
.ocm8aj li { margin: 0; padding-left: 1.459rem; position: relative; }
.ocm8aj li::before { content: "\2014"; position: absolute; left: 0; color: var(--vpa7vu); font-weight: 700; }
.ogrbod { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 10.702rem), 1fr)); gap: 1px; background: var(--vtyqp4); border: 1px solid var(--vtyqp4); border-radius: var(--vrjqu7); overflow: hidden; margin: 2.338rem 0; }
.ogmxqn { background: var(--vq80qv); padding: 1.459rem 1.186rem; }
.oxy59y { font-family: var(--vj786i); font-size: clamp(1.806rem, 3.5vw, 2.398rem); font-weight: 800; line-height: 1.05; color: var(--v162kq); letter-spacing: -0.02em; }
.o5yrp0 { font-size: var(--vh0obp); color: var(--vhht9p); margin-top: 0.39rem; line-height: 1.4; }
.o95zt7 { background: var(--v162kq); color: var(--veqnam); border-radius: var(--vrjqu7); padding: clamp(1.539rem, 4vw, 2.737rem); margin: 2.864rem 0 1.044rem; text-align: center; }
.o95zt7 h2, .o95zt7 h3 { color: var(--veqnam); margin-top: 0; }
.o95zt7 p { color: var(--veqnam); opacity: 0.88; margin-inline: auto; max-width: 59ch; }
.o95zt7 .o08e6w { justify-content: center; }
.o95zt7 .ocu4lk { color: var(--veqnam); border-color: var(--veqnam); }
.o1bejz img { border-radius: var(--vrjqu7); width: 100%; }
.o1bejz figcaption { font-size: var(--vh0obp); color: var(--vhht9p); margin-top: 0.599rem; font-style: italic; }
.ohdh3g { margin: 1.539rem 0; }
.ohdh3g img { border-radius: var(--vrjqu7); }
.o33c4v { background: var(--vq80qv); border: 1px solid #352852; border-radius: var(--vrjqu7); padding: 1.539rem; }
.o0rqme { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15.242rem), 1fr)); gap: 1.186rem; margin: 1.539rem 0 2.074rem; }
.o0rqme .o33c4v { display: flex; flex-direction: column; gap: 0.493rem; }
.o0rqme .o33c4v img { border-radius: calc(var(--vrjqu7) - 0.25rem); margin-bottom: 0.493rem; aspect-ratio: 16 / 10; object-fit: cover; }
.o0rqme .o33c4v h2, .o0rqme .o33c4v h3 { margin: 0; font-size: 1.139rem; }
.o0rqme .o33c4v p { margin: 0; font-size: var(--vh0obp); color: var(--vhht9p); }
.o0rqme .o33c4v .oc02di { margin-top: auto; padding-top: 0.599rem; font-weight: 700; font-size: var(--vh0obp); color: var(--vsj7x0); text-decoration: none; }
.o0rqme .o33c4v .oc02di:hover { text-decoration: underline; }
.ov1eft { margin: 1.539rem 0; }
.ov1eft img { border-radius: var(--vrjqu7); }
.ov1eft figcaption { font-size: var(--vh0obp); color: var(--vhht9p); margin-top: 0.493rem; font-style: italic; }
.oym84i { overflow-x: auto; margin: 1.186rem 0 1.806rem; }
table { border-collapse: collapse; width: 100%; font-size: var(--vh0obp); }
th, td { text-align: left; padding: 0.599rem 0.833rem; border-bottom: 1px solid var(--vtyqp4); vertical-align: top; }
thead th { border-bottom: 2px solid var(--vuo3wb); font-family: var(--v15gu2); }
tbody tr:nth-child(even) { background: rgba(128, 128, 128, 0.086); }
.o6ffy6 { padding-left: 1.539rem; }
.o6ffy6 li { margin-bottom: 0.751rem; font-size: var(--vh0obp); color: var(--vhht9p); }
.o6ffy6 li a { word-break: break-word; }
.oawcom ul { list-style: none; margin: 0; padding: 0; }
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }
.o6xukk.ozru9k2 { border-bottom: 1px solid var(--vtyqp4); background: var(--vq80qv); position: sticky; top: 0; z-index: 50; }
.o6xukk.ozru9k2 .container { display: flex; align-items: center; justify-content: space-between; min-height: var(--vqg2xg); gap: 1.044rem; }
@media (max-width: 862px) {
  .o6xukk.ozru9k2 .o5u5t9 { display: block; }
  .o6xukk.ozru9k2 .ounat2 { display: none; position: absolute; top: var(--vqg2xg); left: 0; right: 0; background: var(--vq80qv); border-bottom: 1px solid var(--vtyqp4); padding: 1.044rem var(--v06nfm); z-index: 50; }
  .o6xukk.ozru9k2 .ounat2.o7vyoh { display: block; }
  .o6xukk.ozru9k2 .ounat2 ul { flex-direction: column; gap: 0.751rem; }
}
@media (min-width: 863px) {
  body.o0kzwb2 { padding-left: 15.104rem; }
  .o6xukk.ozru9k2 { position: fixed; top: 0; left: 0; bottom: 0; width: 15.104rem; border-right: 1px solid var(--vtyqp4); border-bottom: none; }
  .o6xukk.ozru9k2 .container { flex-direction: column; align-items: flex-start; justify-content: flex-start; gap: 1.539rem; min-height: 0; padding-top: 2.074rem; max-width: none; }
  .o6xukk.ozru9k2 .ounat2 ul { flex-direction: column; gap: 0.751rem; align-items: flex-start; }
  .o6xukk.ozru9k2 .o5u5t9 { display: none; }
}
.oaodw9.okcbgu4 { padding: clamp(2.398rem, 6vw, 4.56rem) 0 clamp(1.539rem, 4vw, 2.398rem); }
.oaodw9.okcbgu4 .container { max-width: 54.827rem; }
.oaodw9.okcbgu4 .omber8 { border-bottom: 2px solid var(--vuo3wb); padding-bottom: 0.751rem; margin-bottom: 1.186rem; }
.oaodw9.okcbgu4 h1 { max-width: 24ch; }
.oaodw9.okcbgu4 .ow3tsx { border-top: 1px solid var(--vtyqp4); padding-top: 1.044rem; margin-top: 1.186rem; }
.oaodw9.okcbgu4 .ohdh3g { border: 1px solid var(--vtyqp4); padding: 0.493rem; margin-top: 1.539rem; }
.ok1yl2.o4x93y2 { background: var(--v95g47); border-top: 1px solid var(--vtyqp4); margin-top: 3.795rem; padding-block: 2.398rem; text-align: center; }
.ok1yl2.o4x93y2 a { color: var(--vhht9p); text-decoration: none; }
.ok1yl2.o4x93y2 a:hover { color: var(--vsj7x0); text-decoration: underline; }
.ok1yl2.o4x93y2 .oj6aei { font-style: italic; color: var(--vhht9p); margin: 0 auto 1.186rem; max-width: 58ch; }
.ok1yl2.o4x93y2 .o5p9uy { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.751rem 1.186rem; font-size: var(--vh0obp); }
.ok1yl2.o4x93y2 .oesyqm { margin-top: 1.186rem; font-size: var(--vh0obp); color: var(--vhht9p); }

/* ---- per-site theme layer ---- */
/* Peptides For Puppies — nocturne veterinary evidence desk */

:root {
  --pup-line: color-mix(in srgb, var(--vpa7vu) 30%, transparent);
  --pup-line-hot: color-mix(in srgb, var(--v162kq) 62%, transparent);
  --pup-glow: color-mix(in srgb, var(--vpa7vu) 16%, transparent);
  --pup-panel: color-mix(in srgb, var(--vq80qv) 88%, var(--vt692n));
}

html {
  background: var(--vt692n);
}

body {
  background:
    radial-gradient(circle at 78% 7%, color-mix(in srgb, var(--vpa7vu) 8%, transparent), transparent 27rem),
    linear-gradient(90deg, transparent 0 49.8%, color-mix(in srgb, var(--vpa7vu) 3%, transparent) 50%, transparent 50.2%),
    var(--vt692n);
  letter-spacing: 0.006em;
}

::selection {
  background: var(--vpa7vu);
  color: var(--vt692n);
}

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

.o1jbu9:focus {
  left: 1rem;
  top: 1rem;
  border: 1px solid var(--vpa7vu);
  border-radius: 0;
  box-shadow: 0 0 0 4px var(--vt692n);
  color: var(--vuo3wb);
}

/* Sidebar chrome and wordmark */
.o6xukk {
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--vq80qv) 96%, var(--vpa7vu)), var(--vq80qv) 58%, var(--vt692n));
  border-color: var(--pup-line);
  box-shadow: 10px 0 38px color-mix(in srgb, var(--vt692n) 72%, transparent);
}

.o6xukk::after {
  content: "CANINE TRANSFER / NOT ESTABLISHED";
  position: absolute;
  left: 2rem;
  bottom: 1.75rem;
  max-width: 10rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--pup-line-hot);
  color: var(--vhht9p);
  font-family: var(--v15gu2);
  font-size: 0.61rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.16em;
}

.oozn5e {
  display: grid;
  grid-template-columns: 2.7rem minmax(0, 1fr);
  align-items: center;
  gap: 0.72rem;
  max-width: 11.6rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.06;
  letter-spacing: -0.035em;
  text-transform: uppercase;
}

.oozn5e::before {
  content: "P/P";
  display: grid;
  place-items: center;
  width: 2.7rem;
  height: 2.7rem;
  border: 1px solid var(--vpa7vu);
  background:
    linear-gradient(135deg, transparent 47%, var(--pup-line) 48% 51%, transparent 52%),
    var(--vt692n);
  box-shadow: inset 0 0 0 4px var(--vq80qv);
  color: var(--v162kq);
  font-size: 0.65rem;
  letter-spacing: 0.08em;
}

.oozn5e:hover {
  color: var(--v162kq);
}

.ounat2 {
  width: 100%;
}

.ounat2 ul {
  counter-reset: pup-nav;
  width: 100%;
}

.ounat2 li {
  counter-increment: pup-nav;
  width: 100%;
  margin: 0;
  border-top: 1px solid color-mix(in srgb, var(--vhht9p) 15%, transparent);
}

.ounat2 li:last-child {
  border-bottom: 1px solid color-mix(in srgb, var(--vhht9p) 15%, transparent);
}

.ounat2 a {
  display: grid;
  grid-template-columns: 1.4rem 1fr;
  gap: 0.4rem;
  align-items: baseline;
  padding: 0.67rem 0.25rem;
  color: var(--vhht9p);
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.035em;
}

.ounat2 a::before {
  content: "0" counter(pup-nav);
  color: var(--vpa7vu);
  font-family: var(--v15gu2);
  font-size: 0.56rem;
  letter-spacing: 0.06em;
}

.ounat2 a:hover,
.ounat2 a:focus-visible {
  color: var(--vuo3wb);
  background: linear-gradient(90deg, var(--pup-glow), transparent);
}

.o5u5t9 {
  border-radius: 0;
  border-color: var(--vpa7vu);
  background: var(--vt692n);
  color: var(--vuo3wb);
}

/* Hero: offset clinical plate */
.oaodw9 {
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid var(--pup-line);
  background:
    linear-gradient(115deg, color-mix(in srgb, var(--vq80qv) 93%, transparent) 0 53%, transparent 53%),
    radial-gradient(circle at 88% 24%, var(--pup-glow), transparent 22rem);
}

.oaodw9::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.38;
  background-image:
    linear-gradient(var(--pup-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--pup-line) 1px, transparent 1px);
  background-size: 4.5rem 4.5rem;
  mask-image: linear-gradient(90deg, transparent 34%, black 72%, transparent);
}

.oaodw9::after {
  content: "";
  position: absolute;
  top: clamp(2rem, 5vw, 4rem);
  right: clamp(1.4rem, 4vw, 4rem);
  width: 4.6rem;
  height: 4.6rem;
  border: 1px solid var(--pup-line-hot);
  border-radius: 50%;
  background:
    linear-gradient(transparent 49%, var(--v162kq) 49.5% 50.5%, transparent 51%),
    linear-gradient(90deg, transparent 49%, var(--v162kq) 49.5% 50.5%, transparent 51%);
  opacity: 0.68;
}

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

.oaodw9 .omber8 {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  gap: 0.8rem;
  padding-bottom: 0.78rem;
  border-bottom: 1px solid var(--pup-line-hot);
  color: var(--v162kq);
  font-size: 0.7rem;
  letter-spacing: 0.18em;
}

.oaodw9 .omber8::before {
  content: "+";
  display: grid;
  place-items: center;
  width: 1.25rem;
  height: 1.25rem;
  border: 1px solid var(--vpa7vu);
  color: var(--vpa7vu);
  line-height: 1;
}

.oaodw9 h1 {
  grid-column: 1 / 9;
  margin-top: clamp(1.8rem, 4vw, 3.8rem);
  max-width: 15ch;
  font-size: clamp(2.8rem, 6.8vw, 5.9rem);
  font-weight: 600;
  line-height: 0.91;
  letter-spacing: -0.058em;
}

.oaodw9 .ow3tsx {
  grid-column: 9 / -1;
  align-self: end;
  margin: clamp(2rem, 5vw, 4rem) 0 0;
  padding: 1rem 0 0 1rem;
  border-top: 1px solid var(--vpa7vu);
  border-left: 1px solid var(--vpa7vu);
  color: var(--vuo3wb);
  font-size: clamp(0.96rem, 1.3vw, 1.12rem);
  line-height: 1.65;
}

.oaodw9 .o08e6w {
  grid-column: 1 / 6;
  align-self: start;
  margin-top: 2.25rem;
}

.ohdh3g {
  grid-column: 5 / -1;
  margin: 2.3rem 0 -4.7rem;
  padding: 0.46rem;
  border: 1px solid var(--vpa7vu);
  border-radius: 0;
  background: var(--vt692n);
  box-shadow: -1rem 1rem 0 var(--vq80qv), -1rem 1rem 0 1px var(--pup-line-hot);
  transform: translateX(1rem);
}

.ohdh3g img {
  border-radius: 0;
  filter: saturate(0.78) contrast(1.08);
}

.o7u9uf {
  position: relative;
  border-radius: 0;
  padding: 0.9rem 1.45rem;
  font-size: 0.78rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.okgbxc {
  background: var(--v162kq);
  color: var(--vt692n);
  box-shadow: 5px 5px 0 color-mix(in srgb, var(--v162kq) 27%, transparent);
}

.ocu4lk {
  border-color: var(--vpa7vu);
  color: var(--vuo3wb);
  background: color-mix(in srgb, var(--vq80qv) 76%, transparent);
}

.o7u9uf:focus-visible,
.oc02di:focus-visible,
.ounat2 a:focus-visible,
.oozn5e:focus-visible {
  outline: 2px solid var(--v162kq);
  outline-offset: 4px;
}

/* Editorial body rhythm */
.okgw0y {
  padding-block: clamp(2.8rem, 7vw, 6rem);
}

.okgw0y > .container {
  position: relative;
}

.okgw0y > .container::before {
  content: "EVIDENCE / MODEL / LIMIT";
  position: absolute;
  top: 0;
  left: var(--container-padding);
  color: var(--vhht9p);
  font-family: var(--v15gu2);
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  writing-mode: vertical-rl;
  transform: translateX(-2.5rem);
}

.okgw0y .container > section {
  position: relative;
  padding: clamp(2.2rem, 5vw, 4rem) 0;
  border-top: 1px solid var(--pup-line);
}

.okgw0y .container > section:first-of-type {
  margin-top: 1rem;
  padding: clamp(1.5rem, 4vw, 2.6rem);
  border: 1px solid var(--pup-line-hot);
  background:
    linear-gradient(135deg, var(--pup-glow), transparent 42%),
    var(--pup-panel);
  box-shadow: 0.7rem 0.7rem 0 color-mix(in srgb, var(--vpa7vu) 7%, transparent);
}

.okgw0y .container > section:first-of-type::after {
  content: "TRANSFER GAP ACTIVE";
  display: block;
  width: max-content;
  max-width: 100%;
  margin-top: 1.6rem;
  padding: 0.36rem 0.62rem;
  border: 1px solid var(--v162kq);
  color: var(--v162kq);
  font-family: var(--v15gu2);
  font-size: 0.59rem;
  font-weight: 700;
  letter-spacing: 0.13em;
}

.okgw0y h2 {
  display: grid;
  grid-template-columns: 1.45rem minmax(0, 1fr);
  gap: 0.8rem;
  align-items: start;
  margin: 0 0 1.35rem;
  font-size: clamp(1.55rem, 3.2vw, 2.35rem);
  font-weight: 600;
  letter-spacing: -0.035em;
}

.okgw0y h2::before {
  content: "+";
  display: grid;
  place-items: center;
  width: 1.35rem;
  height: 1.35rem;
  margin-top: 0.22em;
  border: 1px solid var(--vpa7vu);
  color: var(--v162kq);
  font-size: 0.8rem;
  line-height: 1;
}

.okgw0y h3 {
  color: var(--vpa7vu);
  font-weight: 600;
  letter-spacing: -0.02em;
}

.okgw0y p,
.okgw0y li {
  color: var(--vuo3wb);
}

.okgw0y p {
  margin-bottom: 1.25rem;
}

.okgw0y section > ul {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
}

.okgw0y section > ul > li {
  position: relative;
  margin-bottom: 0.8rem;
  padding-left: 1.65rem;
}

.okgw0y section > ul > li::before {
  content: "+";
  position: absolute;
  left: 0;
  top: 0.04em;
  color: var(--v162kq);
  font-family: var(--v15gu2);
  font-weight: 700;
}

.okgw0y em {
  color: var(--vpa7vu);
  font-style: normal;
  font-weight: 600;
}

.okgw0y strong {
  color: var(--vuo3wb);
}

.o4u6pa a {
  display: inline-grid;
  place-items: center;
  min-width: 1.65rem;
  height: 1.38rem;
  margin-inline: 0.09rem;
  border: 1px solid var(--pup-line);
  background: var(--vq80qv);
  color: var(--vpa7vu);
  font-size: 0.72rem;
  line-height: 1;
}

.o4u6pa a:hover {
  border-color: var(--v162kq);
  color: var(--v162kq);
}

/* Compound art plate */
.o1bejz {
  position: relative;
  width: min(100%, 58rem);
  margin: 2.6rem auto 0;
  padding: 0.5rem;
  border: 1px solid var(--pup-line-hot);
  border-radius: 0;
  background: var(--vq80qv);
  box-shadow: 0.8rem 0.8rem 0 color-mix(in srgb, var(--vpa7vu) 8%, transparent);
}

.o1bejz::before {
  content: "MODEL IMAGE / ABSTRACT";
  position: absolute;
  right: 0.5rem;
  bottom: 0.5rem;
  z-index: 2;
  padding: 0.34rem 0.55rem;
  background: var(--vt692n);
  color: var(--vhht9p);
  font-family: var(--v15gu2);
  font-size: 0.55rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.o1bejz img {
  border-radius: 0;
  background: var(--vt692n);
  filter: saturate(0.82) contrast(1.06);
}

/* Roster cards */
.o0rqme {
  gap: 0;
  margin: 5rem 0 3.2rem;
  border: 1px solid var(--pup-line);
  background: var(--pup-line);
}

.o33c4v {
  position: relative;
  overflow: hidden;
  min-height: 28rem;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: var(--vq80qv);
}

.o33c4v::before {
  content: "+";
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 1.6rem;
  height: 1.6rem;
  border: 1px solid var(--v162kq);
  background: color-mix(in srgb, var(--vt692n) 80%, transparent);
  color: var(--v162kq);
  font-size: 0.8rem;
}

.o33c4v img {
  width: 100%;
  margin: 0;
  border-radius: 0;
  border-bottom: 1px solid var(--pup-line);
  filter: saturate(0.72) contrast(1.08);
  transition: filter 180ms ease, transform 180ms ease;
}

.o33c4v h3,
.o33c4v p,
.o33c4v .oc02di {
  margin-inline: 1.35rem;
}

.o33c4v h3 {
  margin-top: 1.4rem;
  color: var(--vuo3wb);
  font-size: 1.32rem;
  letter-spacing: -0.03em;
}

.o33c4v p {
  color: var(--vhht9p);
  font-size: 0.87rem;
  line-height: 1.6;
}

.o33c4v .oc02di {
  margin-bottom: 1.35rem;
  padding: 0.8rem 0 0;
  border-top: 1px solid var(--pup-line);
  color: var(--v162kq);
  font-size: 0.72rem;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.o33c4v:hover img {
  filter: saturate(1) contrast(1.04);
  transform: scale(1.018);
}

/* Tables, evidence boxes, stats, and calls to action */
.oym84i {
  width: min(72rem, calc(100vw - 2 * var(--container-padding)));
  margin: 2rem 50%;
  transform: translateX(-50%);
  border: 1px solid var(--pup-line);
  background: var(--vq80qv);
  box-shadow: 0.7rem 0.7rem 0 color-mix(in srgb, var(--vpa7vu) 7%, transparent);
}

table {
  min-width: 46rem;
  color: var(--vuo3wb);
  font-variant-numeric: tabular-nums;
}

th,
td {
  padding: 0.9rem 1rem;
  border-right: 1px solid var(--pup-line);
  border-bottom-color: var(--pup-line);
  line-height: 1.5;
}

thead th {
  border-bottom: 1px solid var(--v162kq);
  background: var(--vt692n);
  color: var(--v162kq);
  font-size: 0.68rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

tbody tr:nth-child(even) {
  background: color-mix(in srgb, var(--vpa7vu) 5%, transparent);
}

tbody td:first-child {
  color: var(--vpa7vu);
  font-weight: 600;
}

.o276e4 {
  border: 1px solid var(--pup-line-hot);
  border-left: 4px solid var(--v162kq);
  border-radius: 0;
  background: linear-gradient(90deg, var(--pup-glow), var(--vq80qv));
}

.ocm8aj li::before {
  content: "+";
}

.ogrbod {
  gap: 1px;
  border: 1px solid var(--pup-line);
  border-radius: 0;
  background: var(--pup-line);
}

.ogmxqn {
  background: var(--vq80qv);
}

.oxy59y {
  color: var(--v162kq);
  font-variant-numeric: tabular-nums;
}

.o5yrp0 {
  color: var(--vhht9p);
  letter-spacing: 0.04em;
}

.o95zt7 {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--vpa7vu);
  border-radius: 0;
  background:
    linear-gradient(135deg, var(--vpa7vu) 0 0.5rem, transparent 0.5rem),
    var(--vq80qv);
  color: var(--vuo3wb);
  text-align: left;
}

.o95zt7 h2,
.o95zt7 h3,
.o95zt7 p {
  color: var(--vuo3wb);
}

.og6sug {
  border-radius: 0;
  border-color: var(--pup-line);
  background: var(--vq80qv);
}

/* Reference register */
.o6ffy6 {
  margin-top: 2rem;
  padding-left: 0;
  list-style: none;
  counter-reset: pup-ref;
}

.o6ffy6 li {
  counter-increment: pup-ref;
  position: relative;
  margin: 0;
  padding: 1.35rem 1rem 1.35rem 4.2rem;
  border-top: 1px solid var(--pup-line);
  color: var(--vhht9p);
  font-size: 0.88rem;
  line-height: 1.58;
  overflow-wrap: anywhere;
}

.o6ffy6 li::before {
  content: counter(pup-ref, decimal-leading-zero);
  position: absolute;
  top: 1.35rem;
  left: 0;
  display: grid;
  place-items: center;
  width: 2.7rem;
  height: 2.7rem;
  border: 1px solid var(--vpa7vu);
  color: var(--v162kq);
  font-family: var(--v15gu2);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.o6ffy6 li:last-child {
  border-bottom: 1px solid var(--pup-line);
}

.o6ffy6 a {
  color: var(--vpa7vu);
}

/* Footer as a closing case label */
.ok1yl2 {
  position: relative;
  overflow: hidden;
  margin-top: 0;
  border-top: 1px solid var(--v162kq);
  background:
    linear-gradient(90deg, var(--vt692n), var(--vq80qv) 46%, var(--vt692n));
  text-align: left;
}

.ok1yl2::before {
  content: "CASE FILE / CLOSED AT CURRENT EVIDENCE";
  display: block;
  width: min(100%, var(--vhc6fj));
  margin: 0 auto 2rem;
  padding: 0.75rem var(--container-padding);
  border-bottom: 1px solid var(--pup-line);
  color: var(--v162kq);
  font-family: var(--v15gu2);
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.17em;
}

.ok1yl2 .container {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 2fr);
  gap: 2.5rem;
  align-items: start;
}

.oj6aei {
  margin: 0;
  padding: 1.35rem;
  border: 1px solid var(--pup-line-hot);
  color: var(--vuo3wb);
  font-style: normal;
  text-align: left;
}

.oawcom {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5rem;
  justify-content: stretch;
  text-align: left;
}

.ogpmbn {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.45rem;
}

.oytpce {
  width: 100%;
  margin-bottom: 0.35rem;
  padding-bottom: 0.45rem;
  border-bottom: 1px solid var(--pup-line);
  color: var(--vpa7vu);
  font-size: 0.62rem;
  letter-spacing: 0.11em;
}

.oesyqm {
  grid-column: 1 / -1;
  width: 100%;
  padding-top: 1.2rem;
  border-top: 1px solid var(--pup-line);
  color: var(--vhht9p);
  text-align: left;
}

@media (max-width: 760px) {
  .o6xukk::after {
    display: none;
  }

  .oozn5e {
    grid-template-columns: 2.2rem minmax(0, 1fr);
    max-width: 13rem;
    font-size: 0.88rem;
  }

  .oozn5e::before {
    width: 2.2rem;
    height: 2.2rem;
    font-size: 0.56rem;
  }

  .oaodw9::before,
  .oaodw9::after {
    display: none;
  }

  .oaodw9 .container {
    display: block;
  }

  .oaodw9 h1 {
    margin-top: 1.8rem;
    font-size: clamp(2.55rem, 13vw, 4.15rem);
    line-height: 0.94;
  }

  .oaodw9 .ow3tsx {
    margin-top: 1.7rem;
    padding: 0.9rem 0 0;
    border-left: 0;
  }

  .ohdh3g {
    margin: 2rem 0 -2.6rem;
    box-shadow: 0.55rem 0.55rem 0 var(--vq80qv);
    transform: none;
  }

  .oaodw9 .o08e6w {
    margin-top: 1.6rem;
  }

  .o7u9uf {
    width: 100%;
    text-align: center;
  }

  .okgw0y > .container::before {
    display: none;
  }

  .okgw0y .container > section:first-of-type {
    padding: 1.25rem;
    box-shadow: 0.4rem 0.4rem 0 color-mix(in srgb, var(--vpa7vu) 7%, transparent);
  }

  .okgw0y h2 {
    grid-template-columns: 1.2rem minmax(0, 1fr);
    gap: 0.65rem;
  }

  .okgw0y h2::before {
    width: 1.1rem;
    height: 1.1rem;
  }

  .o0rqme {
    grid-template-columns: 1fr;
    margin-top: 3.4rem;
  }

  .o33c4v {
    min-height: 0;
  }

  .oym84i {
    width: 100%;
    margin-inline: 0;
    transform: none;
    box-shadow: none;
  }

  .o6ffy6 li {
    padding-left: 3.5rem;
  }

  .o6ffy6 li::before {
    width: 2.35rem;
    height: 2.35rem;
  }

  .ok1yl2 .container {
    grid-template-columns: 1fr;
    gap: 1.8rem;
  }

  .oawcom {
    grid-template-columns: 1fr;
    gap: 1.2rem;
  }

  .oesyqm {
    grid-column: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .o33c4v img {
    transition: none;
  }
}
