:root {
  --voi4v2: #5d9fe9;
  --v55et0: #1e262f;
  --vlu3ts: #0f1e2e;
  --v05loy: #376395;
  --vpiz6e: #7874f1;
  --vz21a0: #5d9fe9;
  --vjvq7n: #17163c;
  --vp87sk: #25235c;
  --v3h2fl: #7876b2;
  --vyn0dx: #0a091b;
  --va5tsr: #0b0a24;
  --vhw73f: #131136;
  --vuvfqv: #e9e9f1;
  --v50o21: #9f9eb7;
  --v28hgb: #53c69c;
  --vch1hw: #e4b558;
  --vgj28j: #de625e;
  --vss6c3: 71.784rem;
  --v9jhsw: 67ch;
  --vowcuz: #131136;
  --vg1v52: clamp(1.054rem, 3vw, 1.887rem);
  --vjgz9k: 3.8rem;
  --vchyja: 'Schibsted Grotesk', system-ui, sans-serif;
  --vlnyyk: 'Newsreader', system-ui, sans-serif;
  --v8n3gm: 'Schibsted Grotesk', system-ui, sans-serif;
  --vuo60l: clamp(2.307rem, 4.5vw, 3.555rem);
  --vme0bo: clamp(1.485rem, 3vw, 2.307rem);
  --vcpb3j: 1.485rem;
  --vco7uu: 1.015rem;
  --vzw4k1: 0.833rem;
  --vo2ysn: 1.15;
  --vgr8bv: 1.65;
  --vyyp9x: 0.529rem;
  --vmqe4b: 0.77rem;
  --vpjgz6: #111111;
  --vm0g3w: #ffffff;
}
*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { font-family: var(--vlnyyk); font-size: var(--vco7uu); line-height: var(--vgr8bv); color: var(--vuvfqv); background: var(--va5tsr); -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4 { font-family: var(--vchyja); line-height: var(--vo2ysn); font-weight: 700; color: var(--vuvfqv); text-wrap: balance; }
h1 { font-size: var(--vuo60l); letter-spacing: -0.02em; }
h2 { font-size: var(--vme0bo); margin-top: 2.414rem; margin-bottom: 0.77rem; }
h3 { font-size: var(--vcpb3j); margin-top: 1.762rem; margin-bottom: 0.529rem; }
p { margin-bottom: 1.054rem; }
a { color: var(--vz21a0); }
ul, ol { margin: 0 0 1.054rem 1.283rem; }
li { margin-bottom: 0.33rem; }
strong { font-weight: 700; }
code { font-family: ui-monospace, "SF Mono", Menlo, monospace; background: rgba(128, 128, 128, 0.139); border: 1px solid rgba(128, 128, 128, 0.24); border-radius: 4px; padding: 0.098em 0.339em; font-size: 0.871em; color: var(--vuvfqv); }
blockquote { border-left: 3px solid var(--voi4v2); padding-left: 1.054rem; color: var(--v50o21); margin: 0 0 1.054rem; }
img { max-width: 100%; height: auto; display: block; }
sup.ywrhs2 a { text-decoration: none; color: var(--vpiz6e); font-weight: 600; }
.container { width: 100%; max-width: var(--vss6c3); margin-inline: auto; padding-inline: var(--vg1v52); }
.yizf05 { position: absolute; left: -999px; }
.yizf05:focus { left: 1.054rem; top: 1.054rem; background: var(--vhw73f); padding: 0.529rem 1.054rem; z-index: 100; }
main { display: block; }
.yyms1a { font-family: var(--v8n3gm); font-weight: 800; font-size: 1.229rem; color: var(--vuvfqv); text-decoration: none; }
.yz2fcy { min-width: 0; }
.yz2fcy ul { display: flex; flex-wrap: wrap; gap: 1.283rem; list-style: none; margin: 0; padding: 0; min-width: 0; }
.yz2fcy li { white-space: nowrap; }
.yz2fcy a { color: var(--v50o21); text-decoration: none; font-size: var(--vzw4k1); font-weight: 600; }
.yz2fcy a:hover { color: var(--vz21a0); }
.ywfb7t { display: none; background: none; border: 1px solid var(--vp87sk); border-radius: 6px; padding: 0.408rem 0.568rem; font-size: 1.066rem; line-height: 1; cursor: pointer; color: var(--vuvfqv); }
.ych39c { font-family: var(--v8n3gm); text-transform: uppercase; letter-spacing: 0.116em; font-size: var(--vzw4k1); font-weight: 700; color: var(--vpiz6e); margin-bottom: 0.77rem; }
.yivgv1 { font-size: 1.229rem; color: var(--v50o21); margin-top: 1.054rem; max-width: 63ch; }
.yeb2qs { display: flex; flex-wrap: wrap; gap: 0.77rem; margin-top: 1.762rem; }
.yph3v7 { display: inline-block; padding: 0.868rem 1.635rem; border-radius: var(--vyyp9x); font-weight: 700; text-decoration: none; font-size: var(--vzw4k1); transition: transform 0.145s ease, opacity 0.145s ease; }
.yph3v7:hover { transform: translateY(-1.5px); }
.yyube4 { background: var(--voi4v2); color: var(--vpjgz6); }
.y1wkv0 { background: transparent; color: var(--vz21a0); border: 1.5px solid var(--vz21a0); }
article > section, main > article { padding-block: 0.529rem; }
.ynht26 { padding-block: 1.054rem 3.024rem; }
.ynht26 .container > section { max-width: var(--v9jhsw); margin-inline: auto; }
.ynht26 .container > section.yhylqu, .ynht26 .container > .yhylqu { max-width: none; }
.ynht26 .container > section > .yuovo2,
.ynht26 .container > section > .ya1wtt,
.ynht26 .container > section > .ypjhjg,
.ynht26 .container > section > .yrx7wf,
.ynht26 .container > section > .y3tgsj {
  --va52xt: min(var(--vss6c3) - 2 * var(--vg1v52), 100vw - 2 * var(--vg1v52));
  width: var(--va52xt);
  max-width: none;
  margin-inline: calc((100% - var(--va52xt)) / 2);
}
@media (max-width: 901px) {
  .ynht26 .container > section > .yuovo2,
  .ynht26 .container > section > .ya1wtt,
  .ynht26 .container > section > .ypjhjg,
  .ynht26 .container > section > .yrx7wf,
  .ynht26 .container > section > .y3tgsj { width: 100%; margin-inline: 0; }
}
.y3tgsj img { aspect-ratio: 16 / 7; object-fit: contain; background: var(--vhw73f); }
.yrob7k img { aspect-ratio: 16 / 6; object-fit: cover; }
.ypjhjg { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(1.283rem, 3vw, 2.414rem); align-items: center; background: var(--vowcuz, var(--vhw73f)); border: 1px solid var(--vp87sk); border-radius: var(--vmqe4b); padding: clamp(1.283rem, 3vw, 2.307rem); margin: 2.414rem 0; }
.y7ryh9 img { border-radius: calc(var(--vmqe4b) - 0.241rem); width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.y7ryh9 figcaption { font-size: var(--vzw4k1); color: var(--v50o21); margin-top: 0.568rem; line-height: 1.45; }
.yic5f2 { font-family: var(--v8n3gm); text-transform: uppercase; letter-spacing: 0.098em; font-size: 0.77rem; font-weight: 700; color: var(--vpiz6e); margin-bottom: 0.568rem; }
.yrqvaz h2, .yrqvaz h3 { margin-top: 0; }
.yrqvaz p:last-child { margin-bottom: 0; }
@media (max-width: 721px) { .ypjhjg { grid-template-columns: 1fr; } }
.ysb0ew { border-left: 3px solid var(--vpiz6e); background: var(--vowcuz, var(--vhw73f)); border-radius: 0 var(--vmqe4b) var(--vmqe4b) 0; padding: 1.283rem 1.485rem; margin: 1.887rem 0; }
.ysb0ew h2, .ysb0ew h3 { margin-top: 0; font-size: 1.107rem; text-transform: uppercase; letter-spacing: 0.078em; color: var(--v50o21); }
.yi8813 { list-style: none; margin: 0.77rem 0 0; padding: 0; display: grid; gap: 0.568rem; }
.yi8813 li { margin: 0; padding-left: 1.454rem; position: relative; }
.yi8813 li::before { content: "\2014"; position: absolute; left: 0; color: var(--vpiz6e); font-weight: 700; }
.ya1wtt { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 10.865rem), 1fr)); gap: 1px; background: var(--vp87sk); border: 1px solid var(--vp87sk); border-radius: var(--vmqe4b); overflow: hidden; margin: 2.307rem 0; }
.y68iz7 { background: var(--vhw73f); padding: 1.454rem 1.283rem; }
.ydzgd6 { font-family: var(--v8n3gm); font-size: clamp(1.762rem, 3.5vw, 2.414rem); font-weight: 800; line-height: 1.05; color: var(--voi4v2); letter-spacing: -0.02em; }
.yzrhgo { font-size: var(--vzw4k1); color: var(--v50o21); margin-top: 0.408rem; line-height: 1.4; }
.yrx7wf { background: var(--voi4v2); color: var(--vpjgz6); border-radius: var(--vmqe4b); padding: clamp(1.485rem, 4vw, 2.841rem); margin: 3.024rem 0 1.054rem; text-align: center; }
.yrx7wf h2, .yrx7wf h3 { color: var(--vpjgz6); margin-top: 0; }
.yrx7wf p { color: var(--vpjgz6); opacity: 0.88; margin-inline: auto; max-width: 54ch; }
.yrx7wf .yeb2qs { justify-content: center; }
.yrx7wf .y1wkv0 { color: var(--vpjgz6); border-color: var(--vpjgz6); }
.y3tgsj img { border-radius: var(--vmqe4b); width: 100%; }
.y3tgsj figcaption { font-size: var(--vzw4k1); color: var(--v50o21); margin-top: 0.568rem; font-style: italic; }
.yrob7k { margin: 1.485rem 0; }
.yrob7k img { border-radius: var(--vmqe4b); }
.ydfqh7 { background: var(--vhw73f); border: 1px solid #25235c; border-radius: var(--vmqe4b); padding: 1.485rem; }
.yuovo2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 16.724rem), 1fr)); gap: 1.283rem; margin: 1.485rem 0 1.887rem; }
.yuovo2 .ydfqh7 { display: flex; flex-direction: column; gap: 0.529rem; }
.yuovo2 .ydfqh7 img { border-radius: calc(var(--vmqe4b) - 0.241rem); margin-bottom: 0.529rem; aspect-ratio: 16 / 10; object-fit: cover; }
.yuovo2 .ydfqh7 h2, .yuovo2 .ydfqh7 h3 { margin: 0; font-size: 1.229rem; }
.yuovo2 .ydfqh7 p { margin: 0; font-size: var(--vzw4k1); color: var(--v50o21); }
.yuovo2 .ydfqh7 .yqk6ky { margin-top: auto; padding-top: 0.568rem; font-weight: 700; font-size: var(--vzw4k1); color: var(--vz21a0); text-decoration: none; }
.yuovo2 .ydfqh7 .yqk6ky:hover { text-decoration: underline; }
.y6d5ph { margin: 1.485rem 0; }
.y6d5ph img { border-radius: var(--vmqe4b); }
.y6d5ph figcaption { font-size: var(--vzw4k1); color: var(--v50o21); margin-top: 0.529rem; font-style: italic; }
.y1ig8e { overflow-x: auto; margin: 1.283rem 0 1.762rem; }
table { border-collapse: collapse; width: 100%; font-size: var(--vzw4k1); }
th, td { text-align: left; padding: 0.568rem 0.868rem; border-bottom: 1px solid var(--vp87sk); vertical-align: top; }
thead th { border-bottom: 2px solid var(--vuvfqv); font-family: var(--vchyja); }
tbody tr:nth-child(even) { background: rgba(128, 128, 128, 0.08); }
.ypu7ci { padding-left: 1.485rem; }
.ypu7ci li { margin-bottom: 0.77rem; font-size: var(--vzw4k1); color: var(--v50o21); }
.ypu7ci li a { word-break: break-word; }
.yxzvw2 ul { list-style: none; margin: 0; padding: 0; }
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }
.y34se8.yigjc44 { border-bottom: 1px solid var(--vp87sk); background: var(--vhw73f); position: sticky; top: 0; z-index: 50; }
.y34se8.yigjc44 .container { display: flex; align-items: center; justify-content: space-between; min-height: var(--vjgz9k); }
.y34se8.yigjc44 .ywfb7t { display: block; }
.y34se8.yigjc44 .yz2fcy { position: fixed; top: 0; right: 0; bottom: 0; width: min(20.379rem, 80vw); background: var(--vhw73f); border-left: 1px solid var(--vp87sk); transform: translateX(100%); transition: transform 0.254s ease; z-index: 60; padding: 4.454rem 1.485rem 1.485rem; overflow-y: auto; }
.y34se8.yigjc44 .yz2fcy.ys12z1 { transform: translateX(0); }
.y34se8.yigjc44 .yz2fcy ul { flex-direction: column; gap: 1.054rem; }
.y34se8.yigjc44 .yz2fcy a { font-size: var(--vco7uu); }
.y5ztlx { position: fixed; inset: 0; background: rgba(0,0,0,0.4); opacity: 0; visibility: hidden; transition: opacity 0.254s ease; z-index: 55; }
body.y58hph .y5ztlx { opacity: 1; visibility: visible; }
.yaxm1p.yipxz63 { position: relative; padding: 0; margin-bottom: 1.887rem; }
.yaxm1p.yipxz63 .y3krk3 { position: relative; min-height: 300px; background: var(--v55et0); }
.yaxm1p.yipxz63 .y3krk3 img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: 0; margin: 0; }
.yaxm1p.yipxz63 .container { position: relative; }
.yaxm1p.yipxz63 .y065hq { background: var(--vhw73f); color: var(--vuvfqv); border-radius: var(--vmqe4b); padding: clamp(1.485rem, 4vw, 2.414rem); max-width: 41.627rem; margin-top: -3.8rem; box-shadow: 0 10px 30px rgba(0,0,0,0.15); position: relative; }
.yaxm1p.yipxz63 h1 { max-width: 20ch; }
.yr5dgi.yhq6bm3 { background: var(--vhw73f); border-top: 2px solid var(--vuvfqv); margin-top: 3.8rem; padding-block: 2.414rem; }
.yr5dgi.yhq6bm3 a { color: var(--v50o21); text-decoration: none; }
.yr5dgi.yhq6bm3 a:hover { color: var(--vz21a0); text-decoration: underline; }
.yr5dgi.yhq6bm3 .yczbd2 { font-style: italic; color: var(--v50o21); margin-bottom: 1.485rem; max-width: 63ch; }
.yr5dgi.yhq6bm3 .yxzvw2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 1.485rem; }
.yr5dgi.yhq6bm3 .yxzvw2 > div { border-left: 1px solid var(--vp87sk); padding-left: 1.054rem; }
.yr5dgi.yhq6bm3 .yxzvw2 h2 { font-size: var(--vzw4k1); text-transform: uppercase; letter-spacing: 0.098em; margin: 0 0 0.568rem; color: var(--vuvfqv); }
.yr5dgi.yhq6bm3 .yxzvw2 li { margin-bottom: 0.408rem; font-size: var(--vzw4k1); }
.yr5dgi.yhq6bm3 .yy9yci { margin-top: 1.762rem; font-size: var(--vzw4k1); color: var(--v50o21); }

/* ---- per-site theme layer ---- */
/* Clarity Peptide Labs — the Neural Index */

:root {
  --cpl-bg: #0b0a24;
  --cpl-surface: #131136;
  --cpl-surface-raised: #17163c;
  --cpl-line: #25235c;
  --cpl-text: #e9e9f1;
  --cpl-copy: #c7c6d5;
  --cpl-muted: #9f9eb7;
  --cpl-blue: #5d9fe9;
  --cpl-indigo: #7874f1;
  --cpl-grid: rgba(93, 159, 233, .075);
  --cpl-shadow: 0 2rem 5rem rgba(3, 2, 18, .42);
  --cpl-node: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='%235d9fe9' stroke-width='1.8'%3E%3Ccircle cx='8' cy='16' r='3.2'/%3E%3Ccircle cx='24' cy='8' r='3.2'/%3E%3Ccircle cx='24' cy='24' r='3.2'/%3E%3Cpath d='m11 14.5 10-5M11 17.5l10 5M24 11v10'/%3E%3C/svg%3E");
  --cpl-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235d9fe9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h13M13 6l6 6-6 6'/%3E%3C/svg%3E");
}

html {
  background: var(--cpl-bg);
}

body {
  overflow-x: hidden;
  background:
    radial-gradient(circle at 88% 12%, rgba(120, 116, 241, .1), transparent 25rem),
    var(--cpl-bg);
  color: var(--cpl-text);
  font-size: 1.075rem;
  line-height: 1.72;
  letter-spacing: .002em;
  text-rendering: optimizeLegibility;
}

body::before {
  content: "";
  display: block;
  height: .24rem;
  background: linear-gradient(90deg, var(--cpl-blue) 0 56%, var(--cpl-indigo) 56% 82%, var(--cpl-line) 82%);
}

::selection {
  background: var(--cpl-blue);
  color: var(--cpl-bg);
}

a {
  text-underline-offset: .2em;
  text-decoration-thickness: .075em;
}

a:focus-visible,
button:focus-visible {
  outline: 3px solid var(--cpl-blue);
  outline-offset: 4px;
}

main {
  overflow: hidden;
}

h1,
h2,
h3,
h4 {
  letter-spacing: -.035em;
}

.container {
  max-width: 75rem;
}

/* Editorial chrome and a contained laboratory wordmark. */
.y34se8 {
  background: rgba(11, 10, 36, .96);
  border-bottom: 1px solid var(--cpl-line);
  box-shadow: 0 .6rem 2.2rem rgba(3, 2, 18, .18);
  backdrop-filter: blur(16px);
}

.y34se8::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -1px;
  width: min(32vw, 28rem);
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--cpl-blue));
}

.y34se8 .container {
  min-height: 5.35rem;
}

.yyms1a {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: .76rem;
  color: var(--cpl-text);
  font-family: var(--v8n3gm);
  font-size: clamp(1rem, 2vw, 1.22rem);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -.045em;
  white-space: nowrap;
}

.yyms1a::before {
  content: "C/PL";
  display: grid;
  place-items: center;
  width: 3.05rem;
  height: 2.45rem;
  flex: 0 0 3.05rem;
  border: 1px solid var(--cpl-blue);
  border-radius: .35rem .35rem .35rem 1rem;
  background:
    linear-gradient(135deg, transparent 49%, rgba(93, 159, 233, .14) 50%),
    var(--cpl-surface);
  color: var(--cpl-blue);
  box-shadow: .28rem .28rem 0 var(--cpl-line);
  font-size: .67rem;
  font-weight: 700;
  letter-spacing: -.035em;
}

.yyms1a::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -.48rem;
  width: calc(100% - 3.85rem);
  height: 2px;
  background: linear-gradient(90deg, var(--cpl-blue) 0 38%, var(--cpl-indigo) 38% 65%, var(--cpl-line) 65%);
}

.ywfb7t {
  border: 1px solid var(--cpl-line);
  border-radius: 999px;
  background: var(--cpl-surface);
  color: var(--cpl-blue);
  box-shadow: 0 0 0 .28rem rgba(93, 159, 233, .06);
}

.yz2fcy {
  background-color: var(--cpl-surface);
  background-image:
    linear-gradient(var(--cpl-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--cpl-grid) 1px, transparent 1px);
  background-size: 2.8rem 2.8rem;
  border-left-color: var(--cpl-line);
}

.yz2fcy a {
  position: relative;
  display: block;
  padding: .5rem 0 .5rem 1.35rem;
  color: var(--cpl-copy);
  font-family: var(--vchyja);
  letter-spacing: .025em;
}

.yz2fcy a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: .45rem;
  height: .45rem;
  border: 1px solid var(--cpl-indigo);
  border-radius: 50%;
  transform: translateY(-50%);
}

.yz2fcy a:hover,
.yz2fcy a:focus-visible {
  color: var(--cpl-blue);
}

/* Asymmetric neural-field hero: image plane plus offset research plate. */
.yaxm1p {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 38rem;
  margin: 0 0 2rem;
  padding: 0;
  background-color: var(--cpl-bg);
  background-image:
    linear-gradient(var(--cpl-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--cpl-grid) 1px, transparent 1px);
  background-size: 4rem 4rem;
  border-bottom: 1px solid var(--cpl-line);
}

.yaxm1p::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, var(--cpl-bg) 0 22%, rgba(11, 10, 36, .92) 42%, rgba(11, 10, 36, .14) 76%),
    linear-gradient(180deg, transparent 62%, var(--cpl-bg));
}

.yaxm1p::after {
  content: "";
  position: absolute;
  z-index: 0;
  right: clamp(2rem, 6vw, 6rem);
  bottom: 2.5rem;
  width: clamp(8rem, 16vw, 13rem);
  aspect-ratio: 1;
  border: 1px solid rgba(93, 159, 233, .46);
  border-radius: 50%;
  box-shadow:
    inset 0 0 0 1.6rem rgba(120, 116, 241, .1),
    0 0 0 .5rem rgba(11, 10, 36, .72),
    0 0 0 .65rem rgba(93, 159, 233, .25);
  pointer-events: none;
}

.y3krk3 {
  position: absolute;
  z-index: -2;
  inset: 0 0 0 35%;
  min-height: 100%;
  background:
    radial-gradient(circle at 74% 22%, rgba(93, 159, 233, .34) 0 .25rem, transparent .32rem),
    radial-gradient(circle at 47% 55%, rgba(120, 116, 241, .48) 0 .35rem, transparent .43rem),
    linear-gradient(135deg, var(--cpl-surface) 0 48%, var(--cpl-surface-raised) 48%);
}

.y3krk3::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, var(--cpl-bg), transparent 58%), rgba(11, 10, 36, .18);
}

.y3krk3 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .72;
  filter: saturate(.82) contrast(1.08);
}

.yaxm1p .container {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  min-height: 38rem;
  padding-top: 4rem;
  padding-bottom: 4.75rem;
}

.yt1set {
  position: relative;
  width: min(100%, 48rem);
  max-width: 48rem;
  margin: 0;
  padding: clamp(2rem, 5vw, 4rem) clamp(1.5rem, 4vw, 3.5rem);
  overflow: hidden;
  background: rgba(19, 17, 54, .95);
  color: var(--cpl-text);
  border: 1px solid var(--cpl-line);
  border-left: .38rem solid var(--cpl-blue);
  border-radius: .35rem 1.6rem 1.6rem .35rem;
  box-shadow: .85rem .85rem 0 rgba(120, 116, 241, .26), var(--cpl-shadow);
  backdrop-filter: blur(18px);
}

.yt1set::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 9rem;
  height: 9rem;
  background:
    radial-gradient(circle at 55% 45%, transparent 0 1.65rem, rgba(93, 159, 233, .18) 1.72rem 1.82rem, transparent 1.9rem),
    linear-gradient(135deg, transparent 49%, rgba(120, 116, 241, .13) 50%);
}

.yt1set::after {
  content: "REFERENCE / DESK";
  position: absolute;
  right: 1.4rem;
  bottom: 1rem;
  color: var(--cpl-muted);
  font-family: var(--vchyja);
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .16em;
}

.ych39c {
  display: inline-flex;
  align-items: center;
  gap: .62rem;
  margin-bottom: 1.15rem;
  color: var(--cpl-blue);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .17em;
}

.ych39c::before {
  content: "";
  width: 2rem;
  height: 2rem;
  flex: 0 0 2rem;
  background: var(--cpl-node) center / contain no-repeat;
}

.yaxm1p h1 {
  max-width: 14ch;
  margin-bottom: 1.35rem;
  color: var(--cpl-text);
  font-size: clamp(2.7rem, 5.9vw, 5.15rem);
  font-weight: 600;
  line-height: .98;
  letter-spacing: -.065em;
}

.yivgv1 {
  max-width: 43rem;
  margin: 0;
  color: var(--cpl-copy);
  font-size: clamp(1.05rem, 1.7vw, 1.23rem);
  line-height: 1.62;
}

.yeb2qs {
  gap: .72rem;
  margin-top: 1.8rem;
}

.yph3v7 {
  position: relative;
  border-radius: .35rem;
  font-family: var(--vchyja);
  font-size: .78rem;
  letter-spacing: .025em;
  box-shadow: none;
}

.yyube4 {
  background: var(--cpl-blue);
  color: var(--cpl-bg);
  border: 1px solid var(--cpl-blue);
}

.y1wkv0 {
  background: var(--cpl-bg);
  color: var(--cpl-blue);
  border: 1px solid var(--cpl-blue);
}

.yph3v7::after {
  content: "→";
  margin-left: .55rem;
}

/* Long-form rhythm: numbered entries in a calm research register. */
.ynht26 {
  padding: .5rem 0 5rem;
}

.ynht26 > .container {
  counter-reset: cpl-section;
}

.ynht26 .container > section {
  counter-increment: cpl-section;
  position: relative;
  max-width: 70ch;
  margin-inline: auto;
  padding: 3.4rem 0 3.65rem;
  border-top: 1px solid var(--cpl-line);
}

.ynht26 .container > section:first-of-type {
  margin-top: 1.25rem;
  padding: clamp(1.65rem, 4vw, 2.7rem);
  background:
    linear-gradient(135deg, rgba(93, 159, 233, .06), transparent 48%),
    var(--cpl-surface);
  border: 1px solid var(--cpl-line);
  border-top: .32rem solid var(--cpl-blue);
  border-radius: .45rem 1.3rem 1.3rem .45rem;
  box-shadow: .6rem .6rem 0 rgba(37, 35, 92, .52);
}

.ynht26 section h2 {
  position: relative;
  margin: 0 0 1.35rem;
  padding-left: 4.1rem;
  color: var(--cpl-text);
  font-size: clamp(1.6rem, 3vw, 2.35rem);
  font-weight: 600;
  line-height: 1.12;
}

.ynht26 section h2::before {
  content: "0" counter(cpl-section);
  position: absolute;
  left: 0;
  top: .12em;
  display: inline-flex;
  align-items: center;
  width: 3rem;
  height: 1.7rem;
  border-right: 1px solid var(--cpl-indigo);
  color: var(--cpl-blue);
  font-size: .72rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .08em;
}

.ynht26 section h2::after {
  content: "";
  display: block;
  width: 4rem;
  height: 2px;
  margin-top: .85rem;
  background: linear-gradient(90deg, var(--cpl-blue), var(--cpl-indigo) 55%, transparent);
}

.ynht26 section p,
.ynht26 section li {
  color: var(--cpl-text);
}

.ynht26 section p {
  margin-bottom: 1.18rem;
}

.ynht26 section > p:first-of-type {
  font-size: 1.12rem;
  line-height: 1.7;
}

.ynht26 section strong {
  color: var(--cpl-text);
  font-family: var(--vchyja);
  font-weight: 600;
}

.ynht26 section em {
  color: var(--cpl-copy);
}

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

.ynht26 section ul li {
  position: relative;
  margin-bottom: .78rem;
  padding-left: 1.7rem;
}

.ynht26 section ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .67em;
  width: .46rem;
  height: .46rem;
  border: 1px solid var(--cpl-blue);
  border-radius: 50%;
  box-shadow: .48rem 0 0 -.16rem var(--cpl-indigo);
}

.ywrhs2 a {
  display: inline-grid;
  min-width: 1.45rem;
  height: 1.45rem;
  margin-inline: .12rem;
  place-items: center;
  border: 1px solid var(--cpl-line);
  border-radius: 50%;
  background: var(--cpl-surface);
  color: var(--cpl-blue);
  font-family: var(--vchyja);
  font-size: .66rem;
  font-weight: 700;
  line-height: 1;
}

blockquote {
  position: relative;
  margin: 2rem 0;
  padding: 1.3rem 1.6rem 1.3rem 3.4rem;
  border: 1px solid var(--cpl-line);
  border-left: .3rem solid var(--cpl-indigo);
  border-radius: .4rem;
  background: var(--cpl-surface);
  color: var(--cpl-text);
}

blockquote::before {
  content: "“";
  position: absolute;
  left: 1rem;
  top: .45rem;
  color: var(--cpl-blue);
  font-family: var(--vlnyyk);
  font-size: 2.6rem;
  line-height: 1;
}

/* Compound cards: three indexed plates with one connected-node language. */
.yuovo2 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.1rem;
  max-width: 75rem;
  margin: 2.25rem auto 4.25rem;
}

.ydfqh7 {
  position: relative;
  min-height: 100%;
  overflow: hidden;
  padding: 1.25rem;
  background:
    linear-gradient(145deg, rgba(93, 159, 233, .06), transparent 44%),
    var(--cpl-surface);
  border: 1px solid var(--cpl-line);
  border-top: .3rem solid var(--cpl-indigo);
  border-radius: .38rem 1.15rem 1.15rem .38rem;
  box-shadow: .4rem .4rem 0 rgba(37, 35, 92, .4);
  transition: transform .18s ease, border-color .18s ease;
}

.ydfqh7:nth-child(2) {
  transform: translateY(1.15rem);
  border-top-color: var(--cpl-blue);
}

.ydfqh7:hover {
  transform: translateY(-.25rem);
  border-color: var(--cpl-blue);
}

.ydfqh7:nth-child(2):hover {
  transform: translateY(.9rem);
}

.ydfqh7::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 1.75rem;
  right: 1.75rem;
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 50%;
  background: var(--cpl-bg) var(--cpl-node) center / 1.65rem no-repeat;
  box-shadow: 0 0 0 1px var(--cpl-line), 0 0 0 .42rem rgba(11, 10, 36, .55);
}

.ydfqh7 img {
  width: 100%;
  margin: -1.25rem -1.25rem 1.15rem;
  max-width: calc(100% + 2.5rem);
  border: 0;
  border-radius: 0;
  opacity: .82;
  filter: saturate(.82) contrast(1.05);
}

.ydfqh7 h3 {
  margin: .3rem 0 .65rem;
  color: var(--cpl-text);
  font-size: 1.45rem;
  font-weight: 600;
}

.ydfqh7 p {
  color: var(--cpl-copy);
  font-size: .98rem;
  line-height: 1.62;
}

.yqk6ky {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 1.5rem;
  padding-right: 2rem;
  color: var(--cpl-blue);
  font-family: var(--vchyja);
  font-size: .76rem;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.yqk6ky::after {
  content: "";
  position: absolute;
  right: 0;
  width: 1.2rem;
  height: 1.2rem;
  background: var(--cpl-arrow) center / contain no-repeat;
}

/* Evidence modules. */
.y1ig8e {
  margin: 2rem 0;
  overflow-x: auto;
  border: 1px solid var(--cpl-line);
  border-radius: .5rem 1.2rem 1.2rem .5rem;
  background: var(--cpl-surface);
  box-shadow: .55rem .55rem 0 rgba(37, 35, 92, .42);
}

table {
  min-width: 48rem;
  color: var(--cpl-text);
  font-size: .9rem;
  line-height: 1.5;
}

th,
td {
  padding: 1rem 1.05rem;
  border-color: var(--cpl-line);
}

thead th {
  background: var(--cpl-bg);
  color: var(--cpl-blue);
  border-bottom: 2px solid var(--cpl-blue);
  font-size: .72rem;
  letter-spacing: .075em;
  text-transform: uppercase;
}

tbody tr:nth-child(even) {
  background: rgba(120, 116, 241, .07);
}

tbody td:first-child {
  min-width: 10rem;
  color: var(--cpl-text);
  font-family: var(--vchyja);
  font-weight: 600;
}

.ypu7ci {
  counter-reset: cpl-ref;
  margin: 2rem 0 0;
  padding: 0;
  list-style: none;
}

.ypu7ci li {
  counter-increment: cpl-ref;
  position: relative;
  margin: 0 0 .8rem;
  padding: 1.15rem 1.2rem 1.15rem 4.3rem;
  overflow-wrap: anywhere;
  border: 1px solid var(--cpl-line);
  border-radius: .35rem;
  background: var(--cpl-surface);
  color: var(--cpl-copy);
  font-size: .88rem;
  line-height: 1.56;
}

.ypu7ci li::before {
  content: counter(cpl-ref, decimal-leading-zero);
  position: absolute;
  left: 1rem;
  top: 1rem;
  display: grid;
  place-items: center;
  width: 2.25rem;
  height: 2.25rem;
  border: 1px solid var(--cpl-blue);
  border-radius: 50%;
  color: var(--cpl-blue);
  font-family: var(--vchyja);
  font-size: .68rem;
  font-weight: 700;
}

.ypu7ci li a {
  color: var(--cpl-blue);
}

.ysb0ew {
  border: 1px solid var(--cpl-line);
  border-left: .35rem solid var(--cpl-indigo);
  border-radius: .4rem 1rem 1rem .4rem;
  background: var(--cpl-surface);
  box-shadow: .45rem .45rem 0 rgba(37, 35, 92, .4);
}

.yi8813 li::before {
  content: "";
  width: .55rem;
  height: .55rem;
  border: 1px solid var(--cpl-blue);
  border-radius: 50%;
  background: var(--cpl-bg);
}

.ya1wtt {
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--cpl-line);
  border-radius: .45rem 1rem 1rem .45rem;
  background: var(--cpl-line);
}

.y68iz7 {
  background: var(--cpl-surface);
}

.ydzgd6 {
  color: var(--cpl-blue);
}

.yzrhgo {
  color: var(--cpl-copy);
}

.yrx7wf {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--cpl-blue);
  border-radius: .45rem 1.4rem 1.4rem .45rem;
  background:
    radial-gradient(circle at 88% 22%, rgba(120, 116, 241, .34), transparent 11rem),
    var(--cpl-surface);
  color: var(--cpl-text);
  text-align: left;
}

.yrx7wf h2,
.yrx7wf h3,
.yrx7wf p {
  color: var(--cpl-text);
}

.yrx7wf .yeb2qs {
  justify-content: flex-start;
}

.y6d5ph,
.y3tgsj {
  overflow: hidden;
  border: 1px solid var(--cpl-line);
  border-radius: .4rem 1.1rem 1.1rem .4rem;
  background: var(--cpl-surface);
}

.y6d5ph img,
.y3tgsj img {
  max-width: 100%;
}

/* Footer as a quiet closing index rather than a generic link farm. */
.yr5dgi {
  position: relative;
  margin-top: 2rem;
  padding: 4rem 0 2.5rem;
  overflow: hidden;
  background:
    linear-gradient(var(--cpl-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--cpl-grid) 1px, transparent 1px),
    var(--cpl-surface);
  background-size: 3.5rem 3.5rem;
  border-top: 1px solid var(--cpl-line);
}

.yr5dgi::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: .34rem;
  background: linear-gradient(90deg, var(--cpl-blue) 0 36%, var(--cpl-indigo) 36% 58%, transparent 58%);
}

.yczbd2 {
  max-width: 56rem;
  margin: 0 0 2.8rem;
  padding-left: 1.25rem;
  border-left: 3px solid var(--cpl-blue);
  color: var(--cpl-text);
  font-family: var(--vlnyyk);
  font-size: clamp(1.2rem, 2.2vw, 1.65rem);
  font-style: normal;
  line-height: 1.45;
}

.yxzvw2 {
  gap: 2rem;
}

.yxzvw2 > div {
  padding: 1.15rem 0 1rem 1.15rem;
  border-left: 1px solid var(--cpl-line);
}

.yxzvw2 h2 {
  color: var(--cpl-blue);
  font-size: .7rem;
  letter-spacing: .14em;
}

.yr5dgi a {
  color: var(--cpl-copy);
}

.yr5dgi a:hover {
  color: var(--cpl-blue);
}

.yy9yci {
  margin-top: 2.5rem;
  padding-top: 1.15rem;
  border-top: 1px solid var(--cpl-line);
  color: var(--cpl-muted);
  font-family: var(--vchyja);
  font-size: .7rem;
  letter-spacing: .035em;
}

@media (max-width: 760px) {
  body {
    font-size: 1.025rem;
  }

  .container {
    padding-inline: 1.1rem;
  }

  .y34se8 .container {
    min-height: 4.8rem;
  }

  .yyms1a {
    font-size: .95rem;
  }

  .yyms1a::before {
    width: 2.6rem;
    height: 2.2rem;
    flex-basis: 2.6rem;
  }

  .yaxm1p {
    min-height: 0;
  }

  .y3krk3 {
    inset: 0;
    opacity: .42;
  }

  .yaxm1p::before {
    background: linear-gradient(180deg, rgba(11, 10, 36, .58), var(--cpl-bg) 82%);
  }

  .yaxm1p::after {
    display: none;
  }

  .yaxm1p .container {
    min-height: 0;
    padding-top: 3.1rem;
    padding-bottom: 3.8rem;
  }

  .yt1set {
    padding: 1.8rem 1.35rem 2.7rem;
    border-radius: .3rem 1rem 1rem .3rem;
    box-shadow: .48rem .48rem 0 rgba(120, 116, 241, .24);
  }

  .yt1set::before {
    width: 6rem;
    height: 6rem;
  }

  .yaxm1p h1 {
    max-width: 16ch;
    font-size: clamp(2.35rem, 11vw, 3.6rem);
  }

  .yivgv1 {
    font-size: 1.03rem;
  }

  .yuovo2 {
    grid-template-columns: 1fr;
    gap: 1rem;
    margin-bottom: 3rem;
  }

  .ydfqh7:nth-child(2),
  .ydfqh7:nth-child(2):hover {
    transform: none;
  }

  .ynht26 .container > section {
    padding: 2.55rem 0 2.8rem;
  }

  .ynht26 .container > section:first-of-type {
    padding: 1.45rem 1.2rem;
    box-shadow: .38rem .38rem 0 rgba(37, 35, 92, .45);
  }

  .ynht26 section h2 {
    padding-left: 3.45rem;
    font-size: 1.65rem;
  }

  .ynht26 section h2::before {
    width: 2.55rem;
  }

  .ynht26 section > p:first-of-type {
    font-size: 1.05rem;
  }

  .y1ig8e {
    margin-inline: -.15rem;
  }

  .ypu7ci li {
    padding: 1rem 1rem 1rem 3.8rem;
  }

  .ypu7ci li::before {
    left: .8rem;
    width: 2rem;
    height: 2rem;
  }

  .yr5dgi {
    padding-top: 3.35rem;
  }

  .yczbd2 {
    font-size: 1.18rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ydfqh7,
  .yph3v7 {
    transition: none;
  }
}

/* The header's backdrop-filter made it the containing block for the base renderer's
   FIXED drawer nav, so the closed drawer (translateX(100%)) sat in the document and
   widened it by its own width (measured 1763 > 1440). Same effect, on a pseudo-element,
   which contains nothing. */
.y34se8 { backdrop-filter: none; -webkit-backdrop-filter: none; }
.y34se8::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  pointer-events: none;
}
.y34se8 > .container { position: relative; z-index: 1; }
