:root {
  --paper: #f7f9fb;
  --paper-solid: #ffffff;
  --ink: #07111d;
  --ink-2: #111c2a;
  --muted: #687383;
  --line: rgba(7, 17, 29, 0.13);
  --line-strong: rgba(7, 17, 29, 0.25);
  --blue: #245cff;
  --blue-rgb: 36, 92, 255;
  --blue-deep: #1647d9;
  --cyan: #4aa8ff;
  --cyan-rgb: 74, 168, 255;
  --cyan-deep: #2f78d7;
  --cyan-dark: #173d8f;
  --cyan-shadow-rgb: 47, 120, 215;
  --violet: #6f78ff;
  --violet-rgb: 111, 120, 255;
  --acid: #8eb8ff;
  --acid-rgb: 142, 184, 255;
  --live: #2b7cff;
  --code-string: #a9ccff;
  --ecosystem-primary-bg: #eaf3ff;
  --accent-deep: #4e7fe0;
  --accent-dark: #173d8f;
  --max: 1640px;
  --header-h: 78px;
  --mono: "DM Mono", "SFMono-Regular", Consolas, monospace;
  --display: "IBM Plex Sans", "Inter Display", "Inter", "Helvetica Neue", Arial, sans-serif;
  --sans: "Inter", "Helvetica Neue", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--paper); overflow-x: clip; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.5;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}
body.menu-open { overflow: hidden; }
button, input { font: inherit; }
h1, h2, h3 { font-family:var(--display); }
a { color: inherit; text-decoration: none; }
button { color: inherit; }
::selection { color: var(--ink); background: var(--acid); }

.skip-link {
  position: fixed;
  z-index: 9999;
  top: 10px;
  left: 10px;
  padding: 10px 14px;
  background: var(--ink);
  color: #fff;
  transform: translateY(-150%);
  transition: transform .2s ease;
}
.skip-link:focus { transform: translateY(0); }

.page-grid {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  opacity: .38;
  background-image:
    linear-gradient(to right, rgba(7,17,29,.035) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(7,17,29,.035) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(to bottom, #000 0%, transparent 42%);
}
.cursor-glow {
  position: fixed;
  width: 520px;
  height: 520px;
  border-radius: 50%;
  pointer-events: none;
  z-index: 1;
  left: 0;
  top: 0;
  opacity: .13;
  transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(var(--blue-rgb),.38), rgba(var(--cyan-rgb),.12) 35%, transparent 68%);
  filter: blur(10px);
  transition: opacity .3s ease;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  height: var(--header-h);
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 28px;
  padding: 0 clamp(20px, 3.2vw, 62px);
  border-bottom: 1px solid var(--line);
  background: rgba(247,249,251,.84);
  backdrop-filter: blur(20px) saturate(130%);
  transition: background .3s ease, box-shadow .3s ease;
}
.site-header.is-scrolled {
  background: rgba(255,255,255,.94);
  box-shadow: 0 12px 44px rgba(7,17,29,.06);
}
.brand { display: inline-flex; align-items: center; gap: 12px; width: max-content; }
.brand-logo {
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 1px var(--line-strong), 0 8px 22px rgba(7,17,29,.08);
}
.brand-name { font-family:var(--display); font-size:20px; font-weight:600; letter-spacing:-.025em; }
.brand-version {
  padding-left: 12px;
  border-left: 1px solid var(--line-strong);
  color: var(--muted);
  font: 500 10px/1 var(--mono);
  letter-spacing: .14em;
}
.desktop-nav { display: flex; align-items: center; gap: clamp(20px, 2.4vw, 42px); }
.desktop-nav a,
.header-docs { position: relative; color: #253140; font-size: 14px; font-weight: 600; }
.desktop-nav a::after {
  content: "";
  position: absolute;
  left: 0; right: 100%; bottom: -10px;
  height: 1px;
  background: var(--blue);
  transition: right .25s ease;
}
.desktop-nav a:hover::after,
.desktop-nav a.is-active::after { right: 0; }
.header-actions { justify-self: end; display: flex; align-items: center; gap: 22px; }

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-height: 58px;
  padding: 0 24px;
  border: 1px solid transparent;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: -.01em;
  transition: transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease;
}
.button:hover { transform: translateY(-2px); }
.button-small { min-height: 44px; padding: 0 17px; gap: 10px; font-size: 13px; }
.button-paper {
  color: var(--ink);
  background: var(--acid);
  border-color: rgba(7,17,29,.22);
  box-shadow: 0 10px 28px rgba(var(--acid-rgb),.24), inset 0 -1px 0 rgba(7,17,29,.12);
}
.button-paper:hover {
  color: #fff;
  background: var(--blue);
  border-color: var(--blue);
  box-shadow: 0 15px 34px rgba(var(--blue-rgb),.26);
}
.button-dark { background: var(--ink); color: #fff; box-shadow: 0 8px 24px rgba(7,17,29,.12); }
.button-dark:hover { box-shadow: 0 14px 32px rgba(7,17,29,.18); }
.button-accent { background: var(--blue); color: #fff; box-shadow: 0 16px 42px rgba(var(--blue-rgb),.22); }
.button-accent:hover { background: var(--blue-deep); box-shadow: 0 20px 52px rgba(var(--blue-rgb),.3); }
.button-ghost-light { border-color: rgba(255,255,255,.28); color: #fff; background: rgba(255,255,255,.04); }
.button-ghost-light:hover { background: rgba(255,255,255,.1); }
.button-icon { font: 500 18px/1 var(--mono); }
.text-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: max-content;
  font-size: 14px;
  font-weight: 700;
  border-bottom: 1px solid currentColor;
  padding-bottom: 3px;
  transition: gap .2s ease, color .2s ease;
}
.text-link:hover { gap: 14px; color: var(--blue); }
.menu-toggle { display: none; width: 44px; height: 44px; border: 1px solid var(--line); background: transparent; padding: 0; align-items: center; justify-content: center; flex-direction: column; gap: 7px; }
.menu-toggle span { width: 18px; height: 1px; background: currentColor; transition: transform .3s ease; }
.menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(4px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-4px) rotate(-45deg); }
.mobile-menu { display: none; }

main, .site-footer { position: relative; z-index: 2; }
.hero {
  min-height: calc(100svh - var(--header-h));
  width: min(100%, var(--max));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(500px, .92fr);
  border-left: 1px solid var(--line);
  border-right: 1px solid var(--line);
}
.hero-copy {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 850px;
  padding: clamp(48px, 6vw, 94px) clamp(28px, 4.8vw, 80px) 0;
  overflow: hidden;
}
.hero-copy::after {
  content: "29";
  position: absolute;
  right: -1.5vw;
  bottom: -8vw;
  color: transparent;
  -webkit-text-stroke: 1px rgba(7,17,29,.055);
  font-family:var(--display);
  font-size:clamp(260px,31vw,580px);
  font-weight:300;
  letter-spacing:-.055em;
  line-height: .75;
  pointer-events: none;
}
.eyebrow,
.section-kicker,
.micro-label {
  font-family: var(--mono);
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 10px;
}
.eyebrow { display: flex; align-items: center; gap: 10px; color: #344153; }
.status-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 5px rgba(var(--cyan-rgb),.1); }
.eyebrow-code { margin-left: auto; color: var(--muted); }
.hero-title {
  position:relative;
  z-index:1;
  margin:clamp(66px,8vh,108px) 0 0;
  font-family:var(--display);
  font-kerning:normal;
  text-transform:none;
}
.hero-title span { display:block; }
.hero-wordmark {
  max-width:100%;
  font-size:clamp(82px,6.75vw,128px);
  line-height:.94;
  letter-spacing:-.035em;
  font-weight:500;
  white-space:nowrap;
}
.hero-slogan {
  max-width:19ch;
  margin-top:clamp(34px,3vw,50px);
  padding-left:clamp(20px,1.8vw,30px);
  border-left:2px solid var(--blue);
  color:var(--ink-2);
  font-size:clamp(34px,2.8vw,52px);
  line-height:1.1;
  letter-spacing:-.018em;
  font-weight:300;
  text-wrap:balance;
}
.hero-bottom {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(280px, 1fr) auto;
  align-items: end;
  gap: 44px;
  margin-top: auto;
  padding: 72px 0 58px;
}
.hero-intro { max-width:590px; margin:0; color:#344153; font-size:clamp(17px,1.18vw,21px); line-height:1.5; letter-spacing:-.012em; }
.hero-ctas { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.hero-metrics {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin: 0 calc(clamp(28px, 4.8vw, 80px) * -1);
  border-top: 1px solid var(--line);
}
.hero-metrics > div { min-height: 102px; padding: 22px clamp(16px, 1.7vw, 30px); border-right: 1px solid var(--line); display: flex; flex-direction: column; justify-content: space-between; }
.hero-metrics > div:last-child { border-right: 0; }
.metric-label { font: 400 9px/1 var(--mono); text-transform: uppercase; letter-spacing: .12em; color: var(--muted); }
.hero-metrics strong { font-family:var(--display); font-size:clamp(19px,1.55vw,27px); font-weight:500; letter-spacing:-.022em; }

.hero-viewer-wrap {
  position: relative;
  min-height: 850px;
  border-left: 1px solid var(--line);
  padding: clamp(26px, 3.2vw, 58px);
  background:
    radial-gradient(circle at 30% 25%, rgba(var(--cyan-rgb),.11), transparent 33%),
    radial-gradient(circle at 82% 70%, rgba(var(--blue-rgb),.11), transparent 35%),
    rgba(238,243,248,.65);
  display: flex;
  align-items: center;
}
.viewer-shell {
  position: relative;
  width: 100%;
  background: rgba(255,255,255,.85);
  border: 1px solid rgba(7,17,29,.18);
  box-shadow: 0 40px 100px rgba(7,17,29,.14), inset 0 0 0 1px rgba(255,255,255,.5);
  backdrop-filter: blur(18px);
  transform: translateZ(0);
}
.viewer-shell::before,
.viewer-shell::after { content: ""; position: absolute; z-index: 3; width: 18px; height: 18px; pointer-events: none; }
.viewer-shell::before { top: -1px; left: -1px; border-top: 3px solid var(--blue); border-left: 3px solid var(--blue); }
.viewer-shell::after { right: -1px; bottom: -1px; border-right: 3px solid var(--blue); border-bottom: 3px solid var(--blue); }
.viewer-topbar { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 20px; border-bottom: 1px solid var(--line); }
.viewer-topbar > div:first-child { display: flex; flex-direction: column; gap: 5px; }
.viewer-topbar strong { font-size: 14px; letter-spacing: -.02em; }
.viewer-signal { display: flex; align-items: center; gap: 8px; color: var(--muted); font: 400 9px/1 var(--mono); text-transform: uppercase; letter-spacing: .1em; }
.viewer-signal span { width: 6px; height: 6px; background: var(--cyan); border-radius: 50%; animation: signal 1.8s ease-in-out infinite; }
@keyframes signal { 50% { box-shadow: 0 0 0 8px rgba(var(--cyan-rgb),0); } 0%,100% { box-shadow: 0 0 0 0 rgba(var(--cyan-rgb),.3); } }
.viewer-canvas-wrap { position: relative; height: clamp(430px, 44vw, 670px); overflow: hidden; background: linear-gradient(180deg, rgba(247,249,251,.4), rgba(231,238,245,.7)); cursor: grab; touch-action: none; }
.viewer-canvas-wrap:active { cursor: grabbing; }
#moleculeCanvas { display: block; width: 100%; height: 100%; }
.viewer-crosshair { position: absolute; inset: 50% auto auto 50%; width: 34px; height: 34px; transform: translate(-50%,-50%); border: 1px solid rgba(7,17,29,.13); border-radius: 50%; pointer-events: none; }
.viewer-crosshair::before,.viewer-crosshair::after { content:""; position:absolute; background:rgba(7,17,29,.18); }
.viewer-crosshair::before { width: 52px; height: 1px; top: 16px; left: -10px; }
.viewer-crosshair::after { height: 52px; width: 1px; left: 16px; top: -10px; }
.viewer-axis { position: absolute; left: 20px; bottom: 20px; width: 62px; height: 62px; color: var(--muted); font: 500 9px/1 var(--mono); }
.viewer-axis::before,.viewer-axis::after { content:""; position:absolute; left: 13px; bottom: 13px; transform-origin: 0 100%; }
.viewer-axis::before { width: 35px; height: 1px; background: var(--blue); transform: rotate(-18deg); }
.viewer-axis::after { width: 1px; height: 35px; background: var(--cyan); }
.axis-x { position:absolute; right:1px; bottom:18px; color:var(--blue); }
.axis-y { position:absolute; left:9px; top:0; color:var(--cyan); }
.axis-z { position:absolute; left:0; bottom:0; }
.viewer-coordinate { position: absolute; color: rgba(7,17,29,.42); font: 400 8px/1 var(--mono); letter-spacing:.14em; writing-mode:vertical-rl; }
.viewer-coordinate-a { right: 12px; top: 28%; }
.viewer-coordinate-b { left: 12px; top: 26%; transform: rotate(180deg); }
.viewer-scan { position:absolute; z-index:2; left:0; right:0; top:-20%; height:18%; pointer-events:none; background:linear-gradient(to bottom, transparent, rgba(var(--blue-rgb),.08), transparent); border-bottom:1px solid rgba(var(--blue-rgb),.12); animation:scan 6.5s linear infinite; }
@keyframes scan { to { transform: translateY(760%); } }
.viewer-hint { position:absolute; right:18px; bottom:16px; color:var(--muted); font:400 8px/1 var(--mono); text-transform:uppercase; letter-spacing:.09em; }
.viewer-readout { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.viewer-readout > div { min-height:66px; padding:12px 14px; border-right:1px solid var(--line); display:flex; flex-direction:column; justify-content:space-between; }
.viewer-readout > div:last-child { border-right:0; }
.viewer-readout span { color:var(--muted); font:400 8px/1 var(--mono); letter-spacing:.1em; text-transform:uppercase; }
.viewer-readout strong { font:500 12px/1 var(--mono); }
.readout-live { color:var(--live); }
.viewer-controls { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 16px; border-bottom:1px solid var(--line); }
.control-group { display:flex; align-items:center; gap:8px; }
.control-chip,.icon-button,.load-button,.file-button { border:1px solid var(--line); background:rgba(255,255,255,.7); cursor:pointer; transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease; }
.control-chip { min-height:34px; padding:0 12px; font:500 9px/1 var(--mono); text-transform:uppercase; letter-spacing:.08em; }
.control-chip:hover,.control-chip.is-active { background:var(--ink); color:#fff; border-color:var(--ink); }
.icon-button { width:34px; height:34px; display:grid; place-items:center; padding:7px; }
.icon-button:hover { transform:translateY(-1px); border-color:var(--blue); color:var(--blue); }
.icon-button.is-active { background:var(--ink); color:#fff; }
.icon-button svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.viewer-loadbar { display:grid; grid-template-columns:110px auto 1px 1fr; gap:10px; align-items:center; min-height:58px; padding:10px 14px; }
.pdb-input-wrap { display:flex; align-items:center; border:1px solid var(--line); min-height:36px; background:#fff; }
.pdb-input-wrap span { padding:0 9px; color:var(--muted); font:500 8px/1 var(--mono); text-transform:uppercase; letter-spacing:.08em; border-right:1px solid var(--line); }
.pdb-input-wrap input { width:50px; height:34px; border:0; outline:0; padding:0 8px; background:transparent; color:var(--ink); font:500 10px/1 var(--mono); text-transform:uppercase; }
.load-button,.file-button { min-height:36px; padding:0 12px; display:inline-flex; align-items:center; justify-content:center; font:500 8px/1 var(--mono); text-transform:uppercase; letter-spacing:.08em; white-space:nowrap; }
.load-button:hover,.file-button:hover { border-color:var(--blue); color:var(--blue); }
.load-button:disabled { opacity:.55; cursor:wait; }
.file-button { position:relative; overflow:hidden; }
.file-button input { position:absolute; inset:0; opacity:0; cursor:pointer; }
.load-divider { height:24px; background:var(--line); }
.hero-orbit-note { position:absolute; right:clamp(4px,1.3vw,24px); top:11%; bottom:11%; display:flex; flex-direction:column; justify-content:space-between; pointer-events:none; color:rgba(7,17,29,.36); font:400 8px/1 var(--mono); letter-spacing:.13em; writing-mode:vertical-rl; }


.whitepaper-band {
  position: relative;
  z-index: 3;
  width: min(100%, var(--max));
  margin: 0 auto;
  overflow: hidden;
  border-right: 1px solid rgba(255,255,255,.12);
  border-left: 1px solid rgba(255,255,255,.12);
  color: #fff;
  background:
    radial-gradient(circle at 72% 18%, rgba(var(--blue-rgb),.24), transparent 34%),
    linear-gradient(112deg, var(--ink), #0b1726 56%, #101d30);
}
.whitepaper-band::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .34;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(90deg, transparent, #000 20%, #000 80%, transparent);
}
.whitepaper-band-link {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(250px,.72fr) minmax(420px,1.35fr) auto;
  align-items: center;
  gap: clamp(34px,5vw,92px);
  min-height: 206px;
  padding: 30px clamp(28px,4.8vw,80px);
  border-top: 1px solid rgba(255,255,255,.15);
  border-bottom: 1px solid rgba(255,255,255,.15);
  transition: background .3s ease;
}
.whitepaper-band-link:hover { background: rgba(var(--blue-rgb),.11); }
.whitepaper-identity { display: flex; align-items: center; gap: 20px; min-width: 0; }
.whitepaper-identity img {
  width: 72px;
  height: 72px;
  flex: 0 0 auto;
  border-radius: 50%;
  box-shadow: 0 0 0 1px rgba(255,255,255,.3), 0 18px 44px rgba(0,0,0,.22);
}
.whitepaper-identity span { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.whitepaper-identity b { color: var(--acid); font: 500 9px/1 var(--mono); letter-spacing: .14em; }
.whitepaper-identity small { color: rgba(255,255,255,.48); font: 400 10px/1.45 var(--mono); letter-spacing: .04em; }
.whitepaper-title-wrap { min-width: 0; }
.whitepaper-title-wrap .micro-label { display: block; margin-bottom: 14px; color: rgba(255,255,255,.48); }
.whitepaper-title-wrap h2 {
  margin: 0;
  color: #fff;
  font-family: var(--display);
  font-size: clamp(44px,4.4vw,76px);
  font-weight: 400;
  line-height: .96;
  letter-spacing: -.035em;
}
.whitepaper-arrow {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  color: var(--ink);
  background: var(--acid);
  font: 400 30px/1 var(--display);
  box-shadow: 0 18px 44px rgba(var(--acid-rgb),.18);
  transition: transform .3s cubic-bezier(.22,1,.36,1), background .25s ease;
}
.whitepaper-band-link:hover .whitepaper-arrow { transform: translate(5px,-5px) rotate(7deg); background: #fff; }

.discipline-marquee { position:relative; z-index:3; overflow:hidden; border-top:1px solid var(--ink); border-bottom:1px solid var(--ink); background:var(--acid); }
.marquee-track { display:flex; width:max-content; animation:marquee 31s linear infinite; }
.marquee-content { display:flex; align-items:center; flex-shrink:0; gap:28px; min-height:62px; padding-right:28px; font:500 12px/1 var(--mono); text-transform:uppercase; letter-spacing:.08em; }
.marquee-content i { display:block; width:7px; height:7px; border-radius:50%; background:var(--ink); }
@keyframes marquee { to { transform:translateX(-50%); } }

.section-frame { width:min(100%,var(--max)); margin:0 auto; padding:clamp(100px,11vw,190px) clamp(28px,4.8vw,80px); border-left:1px solid var(--line); border-right:1px solid var(--line); }
.section-kicker { display:flex; align-items:center; justify-content:space-between; gap:30px; padding-bottom:18px; border-bottom:1px solid var(--line-strong); color:var(--muted); }
.section-kicker span:first-child { color:var(--ink); }
.section-title { margin:0; font-family:var(--display); font-size:clamp(60px,6.35vw,116px); line-height:.94; letter-spacing:-.038em; text-transform:none; font-weight:400; text-wrap:balance; }
.section-title em { color:var(--blue); font-weight:400; }
.manifesto-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr); gap:8vw; align-items:end; padding:clamp(70px,9vw,150px) 0 clamp(90px,10vw,160px); }
.manifesto-title em { display:inline-block; color:var(--blue); font-weight:400; }
.manifesto-copy { display:flex; flex-direction:column; gap:30px; max-width:570px; }
.manifesto-copy p { margin:0; color:var(--muted); font-size:16px; }
.manifesto-copy .large-copy { color:var(--ink); font-family:var(--display); font-size:clamp(22px,1.95vw,32px); line-height:1.34; letter-spacing:-.018em; font-weight:400; }
.thesis-cards { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line-strong); border-left:1px solid var(--line-strong); }
.thesis-card { min-height:560px; display:flex; flex-direction:column; padding:26px; border-right:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong); background:rgba(255,255,255,.46); transition:transform .35s ease,box-shadow .35s ease,background .35s ease; }
.thesis-card:hover { transform:translateY(-10px); background:#fff; box-shadow:0 30px 70px rgba(7,17,29,.1); }
.thesis-card-featured { background:var(--ink); color:#fff; }
.thesis-card-featured:hover { background:var(--ink-2); }
.card-topline { display:flex; justify-content:space-between; font:400 9px/1 var(--mono); letter-spacing:.1em; }
.science-icon { width:140px; height:140px; margin:auto 0 55px; color:var(--blue); }
.thesis-card-featured .science-icon { color:var(--acid); }
.science-icon svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.2; }
.thesis-card h3 { max-width:410px; margin:0 0 18px; font-size:clamp(27px,2.05vw,36px); line-height:1.1; letter-spacing:-.024em; font-weight:500; }
.thesis-card p { max-width:410px; margin:0; color:var(--muted); font-size:15px; }
.thesis-card-featured p { color:rgba(255,255,255,.62); }
.card-foot { display:flex; flex-wrap:wrap; gap:8px; margin-top:42px; }
.card-foot span { padding:7px 9px; border:1px solid currentColor; font:400 8px/1 var(--mono); letter-spacing:.08em; opacity:.6; }

.science-fields { position:relative; overflow:hidden; background:var(--ink); color:#fff; }
.science-fields::before { content:""; position:absolute; inset:0; opacity:.2; background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px); background-size:72px 72px; }
.science-fields-inner { position:relative; border-color:rgba(255,255,255,.12); }
.section-kicker-light { border-color:rgba(255,255,255,.25); color:rgba(255,255,255,.48); }
.section-kicker-light span:first-child { color:#fff; }
.science-heading-row { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); gap:8vw; align-items:end; padding:clamp(70px,8vw,130px) 0 clamp(80px,9vw,145px); }
.science-heading em { color:var(--acid); }
.science-heading-row p { max-width:480px; margin:0; color:rgba(255,255,255,.58); font-size:18px; }
.field-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); grid-auto-rows:minmax(390px,auto); border-top:1px solid rgba(255,255,255,.23); border-left:1px solid rgba(255,255,255,.23); }
.field-card { position:relative; min-height:390px; padding:24px; overflow:hidden; border-right:1px solid rgba(255,255,255,.23); border-bottom:1px solid rgba(255,255,255,.23); background:rgba(255,255,255,.02); transition:background .3s ease; }
.field-card:hover { background:rgba(255,255,255,.06); }
.field-card-wide { grid-column:span 2; }
.field-meta { display:flex; justify-content:space-between; color:rgba(255,255,255,.48); font:400 9px/1 var(--mono); letter-spacing:.1em; }
.field-card h3 { position:relative; z-index:2; margin:55px 0 12px; max-width:540px; font-size:clamp(34px,3.05vw,53px); line-height:1.03; letter-spacing:-.028em; text-transform:none; font-weight:500; }
.field-card p { position:relative; z-index:2; max-width:450px; margin:0; color:rgba(255,255,255,.52); }
.helix-graphic { position:absolute; right:-5%; bottom:-20%; width:65%; height:100%; transform:rotate(-12deg); }
.helix-graphic::before,.helix-graphic::after { content:""; position:absolute; inset:10% 20%; border:1px solid rgba(var(--acid-rgb),.25); border-radius:50%; transform:skewY(25deg); }
.helix-graphic::after { transform:skewY(-25deg); }
.helix-graphic span { position:absolute; left:50%; width:58%; height:1px; background:linear-gradient(90deg,transparent,var(--acid),transparent); transform-origin:center; }
.helix-graphic span:nth-child(1){top:14%;transform:translateX(-50%) rotate(16deg)}.helix-graphic span:nth-child(2){top:25%;transform:translateX(-50%) rotate(-14deg)}.helix-graphic span:nth-child(3){top:36%;transform:translateX(-50%) rotate(17deg)}.helix-graphic span:nth-child(4){top:47%;transform:translateX(-50%) rotate(-15deg)}.helix-graphic span:nth-child(5){top:58%;transform:translateX(-50%) rotate(15deg)}.helix-graphic span:nth-child(6){top:69%;transform:translateX(-50%) rotate(-13deg)}.helix-graphic span:nth-child(7){top:80%;transform:translateX(-50%) rotate(16deg)}.helix-graphic span:nth-child(8){top:91%;transform:translateX(-50%) rotate(-14deg)}
.field-matrix { position:absolute; inset:48% 20px 20px; opacity:.42; background-image:radial-gradient(circle,var(--cyan) 1.4px,transparent 1.5px); background-size:24px 24px; mask-image:linear-gradient(135deg,transparent,#000); }
.crystal { position:absolute; right:10%; bottom:10%; width:210px; height:190px; transform:rotate(-10deg); }
.crystal::before,.crystal::after { content:""; position:absolute; inset:20%; border:1px solid rgba(var(--violet-rgb),.6); transform:rotate(45deg) skew(8deg,8deg); }
.crystal::after { inset:34%; border-color:var(--violet); }
.crystal i { position:absolute; width:9px; height:9px; border-radius:50%; background:var(--violet); box-shadow:0 0 25px rgba(var(--violet-rgb),.8); }
.crystal i:nth-child(1){left:8%;top:48%}.crystal i:nth-child(2){left:48%;top:5%}.crystal i:nth-child(3){right:8%;top:48%}.crystal i:nth-child(4){left:48%;bottom:5%}.crystal i:nth-child(5){left:28%;top:27%}.crystal i:nth-child(6){right:28%;top:27%}.crystal i:nth-child(7){left:28%;bottom:27%}.crystal i:nth-child(8){right:28%;bottom:27%}
.topography { position:absolute; inset:auto -2px 0; height:55%; opacity:.65; }
.topography svg { width:100%; height:100%; fill:none; stroke:var(--cyan); stroke-width:1; }
.systems-orbit { position:absolute; right:5%; bottom:-12%; width:260px; height:260px; }
.systems-orbit .orbit { position:absolute; inset:10%; border:1px solid rgba(255,255,255,.28); border-radius:50%; }
.orbit-a { transform:rotateX(68deg) rotateZ(15deg); }.orbit-b { transform:rotateY(68deg) rotateZ(35deg); }.orbit-c { transform:rotateY(57deg) rotateX(38deg); }
.systems-orbit i { position:absolute; left:50%; top:50%; width:18px; height:18px; transform:translate(-50%,-50%); border-radius:50%; background:var(--acid); box-shadow:0 0 45px rgba(var(--acid-rgb),.8); }

.architecture-intro { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr); gap:8vw; align-items:end; padding:clamp(70px,9vw,145px) 0 clamp(80px,9vw,140px); }
.architecture-intro-copy { max-width:520px; }
.architecture-intro-copy p { margin:0 0 30px; font-size:20px; line-height:1.45; color:#3e4a5a; letter-spacing:-.02em; }
.architecture-links { display:flex; flex-wrap:wrap; align-items:center; gap:18px 28px; }
.text-link-strong { color:var(--blue); font-weight:800; }
.protocol-lab { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(370px,.55fr); min-height:680px; border:1px solid var(--line-strong); background:#fff; box-shadow:0 30px 80px rgba(7,17,29,.08); }
.protocol-visual { position:relative; overflow:hidden; min-height:680px; border-right:1px solid var(--line-strong); background:linear-gradient(145deg,#f8fafc,#edf3f8); }
#networkCanvas { width:100%; height:100%; display:block; }
.protocol-visual-label { position:absolute; display:flex; align-items:center; gap:8px; color:var(--muted); font:400 8px/1 var(--mono); letter-spacing:.1em; }
.protocol-visual-label span { display:grid; place-items:center; width:20px; height:20px; border:1px solid var(--line-strong); color:var(--ink); }
.top-left{top:20px;left:20px}.top-right{top:20px;right:20px}.bottom-left{bottom:20px;left:20px}.bottom-right{bottom:20px;right:20px}
.protocol-core { position:absolute; left:50%; top:50%; width:170px; height:170px; transform:translate(-50%,-50%); border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; background:rgba(255,255,255,.82); border:1px solid var(--line-strong); box-shadow:0 20px 60px rgba(7,17,29,.12),inset 0 0 0 14px rgba(var(--blue-rgb),.04); backdrop-filter:blur(12px); }
.protocol-core::before,.protocol-core::after { content:""; position:absolute; border-radius:50%; border:1px solid rgba(var(--blue-rgb),.17); animation:corePulse 3s ease-out infinite; }
.protocol-core::before{inset:-38px}.protocol-core::after{inset:-78px;animation-delay:1.2s}
@keyframes corePulse { 0%{transform:scale(.85);opacity:.9}100%{transform:scale(1.15);opacity:0} }
.protocol-core span { font-size:54px; font-weight:850; letter-spacing:-.08em; }
.protocol-core small { font:400 7px/1 var(--mono); letter-spacing:.1em; color:var(--muted); }
.protocol-panel { display:flex; flex-direction:column; background:var(--ink); color:#fff; min-width:0; }
.panel-head { min-height:58px; padding:0 18px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(255,255,255,.14); color:rgba(255,255,255,.55); font:400 8px/1 var(--mono); text-transform:uppercase; letter-spacing:.1em; }
.panel-state { display:flex; align-items:center; gap:7px; color:var(--acid); }
.panel-state i { width:6px; height:6px; background:currentColor; border-radius:50%; }
.protocol-panel pre { flex:1; margin:0; padding:34px 20px; overflow:auto; font:400 clamp(11px,1vw,14px)/2 var(--mono); }
.protocol-panel code { white-space:pre; }
.code-muted { color:rgba(255,255,255,.25); user-select:none; }.code-key{color:#8ea2ff}.code-string{color:var(--code-string)}.code-number{color:var(--acid)}
.panel-proof { min-height:90px; padding:14px 18px; border-top:1px solid rgba(255,255,255,.14); display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:18px; font:400 8px/1 var(--mono); letter-spacing:.09em; }
.panel-proof strong { color:var(--acid); font-size:9px; }
.hash-bars { display:flex; align-items:center; gap:4px; height:34px; }
.hash-bars i { flex:1; height:var(--h,45%); background:rgba(255,255,255,.28); }
.hash-bars i:nth-child(1){--h:32%}.hash-bars i:nth-child(2){--h:74%}.hash-bars i:nth-child(3){--h:48%}.hash-bars i:nth-child(4){--h:93%}.hash-bars i:nth-child(5){--h:61%}.hash-bars i:nth-child(6){--h:84%}.hash-bars i:nth-child(7){--h:40%}.hash-bars i:nth-child(8){--h:68%}.hash-bars i:nth-child(9){--h:100%}.hash-bars i:nth-child(10){--h:53%}
.architecture-steps { display:grid; grid-template-columns:repeat(4,1fr); margin-top:70px; border-top:1px solid var(--line-strong); border-left:1px solid var(--line-strong); }
.architecture-step { min-height:270px; padding:22px; display:flex; flex-direction:column; justify-content:space-between; border-right:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong); }
.step-no { font:400 9px/1 var(--mono); color:var(--blue); }
.architecture-step h3 { margin:0 0 12px; font-size:29px; letter-spacing:-.022em; font-weight:500; }
.architecture-step p { margin:0; color:var(--muted); font-size:14px; }

.audiences { background:#eef3f8; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.audiences-inner { display:grid; grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr); gap:8vw; padding-top:clamp(90px,10vw,160px); padding-bottom:clamp(90px,10vw,160px); }
.audience-title { min-width:0; }
.audience-title h2 { max-width:100%; margin:35px 0 0; font-size:clamp(66px,6.2vw,112px); line-height:.94; letter-spacing:-.038em; text-transform:none; font-weight:400; }
.audience-title em { color:var(--blue); font-weight:400; }
.audience-list { min-width:0; border-top:1px solid var(--line-strong); }
.audience-row { position:relative; display:grid; grid-template-columns:80px minmax(0,.7fr) minmax(0,1fr) 30px; gap:28px; align-items:center; min-height:180px; border-bottom:1px solid var(--line-strong); transition:padding .25s ease,background .25s ease; }
.audience-row:hover { padding-left:18px; background:rgba(255,255,255,.55); }
.audience-index { font:400 9px/1 var(--mono); color:var(--blue); }
.audience-row h3 { min-width:0; margin:0; font-size:clamp(28px,2.55vw,44px); letter-spacing:-.024em; font-weight:500; }
.audience-row p { min-width:0; margin:0; color:var(--muted); }
.audience-arrow { font:400 22px/1 var(--mono); }

.ecosystem-heading { display:grid; grid-template-columns:1.25fr .75fr; gap:8vw; align-items:end; padding:clamp(70px,9vw,145px) 0 clamp(80px,9vw,140px); }
.ecosystem-heading p { max-width:510px; margin:0; color:var(--muted); font-size:19px; }
.ecosystem-grid { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid var(--line-strong); border-left:1px solid var(--line-strong); }
.ecosystem-card { position:relative; min-height:540px; display:flex; flex-direction:column; overflow:hidden; border-right:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong); background:rgba(255,255,255,.56); transition:transform .35s ease,box-shadow .35s ease,background .35s ease; }
.ecosystem-card:hover { z-index:2; transform:translateY(-8px); background:#fff; box-shadow:0 30px 80px rgba(7,17,29,.14); }
.ecosystem-card-primary { background:var(--ecosystem-primary-bg); }
.ecosystem-card-wide { grid-column:span 2; min-height:500px; }
.ecosystem-card-head { display:flex; justify-content:space-between; padding:18px 20px; border-bottom:1px solid var(--line); font:400 9px/1 var(--mono); letter-spacing:.1em; }
.ecosystem-card-copy { margin-top:auto; padding:28px; border-top:1px solid var(--line); background:rgba(255,255,255,.68); backdrop-filter:blur(10px); }
.ecosystem-card-copy h3 { margin:0 0 12px; font-size:clamp(34px,3.2vw,56px); line-height:1; letter-spacing:-.032em; font-weight:500; }
.ecosystem-card-copy p { max-width:560px; margin:0; color:var(--muted); }
.ecosystem-molecule { position:relative; flex:1; min-height:300px; }
.ecosystem-molecule i { position:absolute; left:var(--x); top:var(--y); width:var(--s); height:var(--s); transform:translate(-50%,-50%); border-radius:50%; background:radial-gradient(circle at 32% 28%,#fff 0 7%,var(--cyan) 20%,var(--cyan-deep) 72%,var(--cyan-dark) 100%); box-shadow:0 18px 32px rgba(var(--cyan-shadow-rgb),.24); z-index:2; }
.ecosystem-molecule i:nth-child(2),.ecosystem-molecule i:nth-child(4){background:radial-gradient(circle at 32% 28%,#fff 0 7%,var(--blue) 20%,#263cbd 72%,#151c60 100%)}
.ecosystem-molecule i:nth-child(5){background:radial-gradient(circle at 32% 28%,#fff 0 7%,var(--acid) 20%,var(--accent-deep) 72%,var(--accent-dark) 100%)}
.ecosystem-molecule .bond { position:absolute; height:7px; transform-origin:left center; background:linear-gradient(180deg,#d8e1e9,#8290a0); border-radius:99px; box-shadow:0 4px 8px rgba(7,17,29,.15); }
.b1{left:18%;top:46%;width:24%;transform:rotate(-32deg)}.b2{left:37%;top:32%;width:24%;transform:rotate(21deg)}.b3{left:58%;top:41%;width:20%;transform:rotate(-31deg)}.b4{left:58%;top:50%;width:29%;transform:rotate(29deg)}.b5{left:44%;top:70%;width:39%;transform:rotate(-4deg)}
.dataset-visual { flex:1; display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--line); padding:1px; }
.dataset-visual div { display:flex; flex-direction:column; justify-content:space-between; padding:24px; background:#f7f9fb; }
.dataset-visual span { font:400 8px/1 var(--mono); color:var(--muted); letter-spacing:.1em; }
.dataset-visual strong { font:500 clamp(35px,4vw,68px)/1 var(--mono); letter-spacing:-.08em; }
.forest-visual { position:relative; flex:1; min-height:300px; padding:30px; display:flex; align-items:flex-end; }
.forest-visual svg { position:absolute; inset:15% 0 0; width:100%; height:85%; fill:rgba(var(--blue-rgb),.08); stroke:var(--blue); stroke-width:1.2; }
.forest-visual span { position:relative; z-index:2; font:400 9px/1 var(--mono); letter-spacing:.1em; }
.cipher-visual { position:relative; flex:1; padding:30px; display:flex; flex-direction:column; gap:16px; overflow:hidden; background:var(--ink); color:rgba(255,255,255,.38); font:400 11px/1 var(--mono); }
.cipher-visual::after { content:""; position:absolute; inset:0; background:linear-gradient(120deg,transparent 40%,rgba(var(--acid-rgb),.08),transparent 60%); transform:translateX(-100%); animation:cipherSweep 4s linear infinite; }
@keyframes cipherSweep { to { transform:translateX(100%); } }
.cipher-lock { position:absolute; left:50%; top:54%; width:115px; height:92px; transform:translate(-50%,-50%); border:1px solid rgba(var(--acid-rgb),.7); background:rgba(var(--acid-rgb),.04); }
.cipher-lock::before { content:""; position:absolute; left:24px; right:24px; bottom:100%; height:60px; border:1px solid rgba(var(--acid-rgb),.7); border-bottom:0; border-radius:50px 50px 0 0; }
.cipher-lock i { position:absolute; left:50%; top:48%; width:11px; height:27px; transform:translate(-50%,-50%); background:var(--acid); clip-path:polygon(50% 0,100% 45%,70% 45%,70% 100%,30% 100%,30% 45%,0 45%); }
.explorer-visual { flex:1; display:grid; grid-template-columns:1fr 210px; min-height:290px; padding:28px; gap:28px; background:linear-gradient(135deg,#f6f9fc,#e9f0f7); }
.explorer-chart { display:flex; align-items:flex-end; gap:clamp(6px,1vw,15px); padding-top:35px; border-bottom:1px solid var(--line-strong); background-image:linear-gradient(rgba(7,17,29,.06) 1px,transparent 1px); background-size:100% 48px; }
.explorer-chart i { flex:1; height:var(--h); background:linear-gradient(to top,var(--blue),var(--cyan)); opacity:.85; transition:height .4s ease; }
.ecosystem-card:hover .explorer-chart i:nth-child(odd) { height:calc(var(--h) * .82); }
.explorer-lines { display:flex; flex-direction:column; justify-content:space-between; padding:12px 0; border-top:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong); font:400 9px/1 var(--mono); letter-spacing:.1em; color:var(--muted); }
.explorer-lines strong { color:var(--live); font-size:52px; letter-spacing:-.07em; }

.final-cta { position:relative; min-height:900px; overflow:hidden; display:flex; align-items:center; justify-content:center; padding:100px 28px; background:var(--ink); color:#fff; border-top:1px solid rgba(255,255,255,.1); }
.final-cta-grid { position:absolute; inset:0; opacity:.3; background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px); background-size:72px 72px; }
.final-cta::before { content:""; position:absolute; width:80vw; height:80vw; border-radius:50%; border:1px solid rgba(255,255,255,.11); }
.final-cta::after { content:""; position:absolute; width:58vw; height:58vw; border-radius:50%; border:1px solid rgba(var(--cyan-rgb),.18); }
.final-cta-orbit { position:absolute; left:50%; top:50%; width:min(38vw,560px); aspect-ratio:1; transform:translate(-50%,-50%); border:1px solid rgba(255,255,255,.15); border-radius:50%; animation:slowRotate 28s linear infinite; }
.final-cta-orbit i { position:absolute; width:18px; height:18px; border-radius:50%; background:var(--acid); box-shadow:0 0 35px rgba(var(--acid-rgb),.6); }
.final-cta-orbit i:nth-child(1){left:50%;top:-9px}.final-cta-orbit i:nth-child(2){left:7%;bottom:20%}.final-cta-orbit i:nth-child(3){right:6%;bottom:18%;background:var(--cyan)}
.final-cta-orbit span { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%) rotate(90deg); color:rgba(255,255,255,.05); font-family:var(--display); font-size:clamp(160px,24vw,430px); font-weight:300; letter-spacing:-.05em; }
@keyframes slowRotate { to { transform:translate(-50%,-50%) rotate(360deg); } }
.final-cta-copy { position:relative; z-index:3; width:100%; min-width:0; text-align:center; max-width:1100px; }
.final-cta-copy .micro-label { color:rgba(255,255,255,.5); }
.final-cta h2 { max-width:100%; margin:50px 0 36px; font-family:var(--display); font-size:clamp(76px,9.8vw,176px); line-height:.88; letter-spacing:-.045em; text-transform:none; font-weight:400; }
.final-cta h2 em { display:inline-block; color:var(--acid); font-weight:400; }
.final-cta-copy p { max-width:630px; margin:0 auto; color:rgba(255,255,255,.58); font-size:20px; }
.final-actions { display:flex; justify-content:center; gap:12px; margin-top:46px; }
.final-cta-serial { position:absolute; left:28px; bottom:28px; color:rgba(255,255,255,.35); font:400 8px/1 var(--mono); letter-spacing:.15em; }

.site-footer { width:min(100%,var(--max)); margin:0 auto; display:grid; grid-template-columns:1fr 1.25fr; gap:80px; padding:70px clamp(28px,4.8vw,80px) 30px; border-left:1px solid var(--line); border-right:1px solid var(--line); background:var(--paper); }
.footer-brand { display:flex; gap:16px; align-items:flex-start; }
.footer-logo {
  width: 58px;
  height: 58px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 1px var(--line-strong), 0 12px 30px rgba(7,17,29,.08);
}
.footer-brand div { display:flex; flex-direction:column; gap:6px; }
.footer-brand strong { font-family:var(--display); font-size:25px; font-weight:600; letter-spacing:-.025em; }
.footer-brand span { color:var(--muted); font-size:13px; }
.footer-links { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.footer-links div { display:flex; flex-direction:column; gap:10px; }
.footer-links span { margin-bottom:8px; color:var(--muted); font:400 8px/1 var(--mono); text-transform:uppercase; letter-spacing:.1em; }
.footer-links a { width:max-content; font-size:14px; font-weight:600; }
.footer-links a:hover { color:var(--blue); }
.footer-legal { grid-column:1/-1; display:grid; grid-template-columns:auto 1fr auto; align-items:start; gap:50px; margin-top:50px; padding-top:24px; border-top:1px solid var(--line-strong); color:var(--muted); font:400 9px/1.6 var(--mono); }
.footer-legal p { max-width:860px; margin:0; }
.footer-legal a { color:var(--ink); }

.reveal { opacity:0; transform:translateY(34px); transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1); }
.reveal.is-visible { opacity:1; transform:none; }

@media (max-width: 1280px) {
  .site-header { grid-template-columns:1fr auto; }
  .header-actions { gap:12px; }
  .desktop-nav { display:none; }
  .hero { grid-template-columns:1fr 1fr; }
  .hero-wordmark { font-size:clamp(72px,7.25vw,96px); }
  .hero-slogan { max-width:19ch; font-size:clamp(31px,3.35vw,43px); }
  .hero-bottom { grid-template-columns:1fr; align-items:start; }
  .hero-ctas { flex-direction:row; align-items:center; }
  .hero-copy,.hero-viewer-wrap { min-height:800px; }
  .field-grid { grid-template-columns:1fr 1fr; }
  .field-card-wide { grid-column:span 2; }
  .protocol-lab { grid-template-columns:1fr 400px; }
  .audiences-inner { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:5vw; }
}

@media (max-width: 1024px) {
  :root { --header-h:70px; }
  .whitepaper-band-link { grid-template-columns:1fr auto; gap:26px; min-height:220px; }
  .whitepaper-identity { grid-column:1/-1; }
  .whitepaper-title-wrap h2 { font-size:clamp(44px,7vw,68px); }
  .header-docs { display:none; }
  .menu-toggle { display:flex; }
  .mobile-menu { display:block; position:fixed; inset:var(--header-h) 0 0; z-index:900; padding:40px 24px 24px; background:var(--paper); transform:translateY(-105%); transition:transform .45s cubic-bezier(.22,1,.36,1); visibility:hidden; }
  .mobile-menu.is-open { transform:none; visibility:visible; }
  .mobile-menu nav { display:flex; flex-direction:column; }
  .mobile-menu nav a { display:flex; justify-content:space-between; padding:24px 0; border-bottom:1px solid var(--line-strong); font-family:var(--display); font-size:clamp(38px,8vw,72px); line-height:1.02; letter-spacing:-.032em; text-transform:none; font-weight:400; }
  .mobile-menu nav span { font:400 9px/1 var(--mono); color:var(--muted); }
  .mobile-menu-foot { position:absolute; left:24px; right:24px; bottom:24px; display:flex; justify-content:space-between; color:var(--muted); font:400 8px/1 var(--mono); text-transform:uppercase; letter-spacing:.1em; }
  .hero { grid-template-columns:1fr; }
  .hero-copy { min-height:auto; border-bottom:1px solid var(--line); }
  .hero-wordmark { font-size:clamp(88px,12.5vw,126px); }
  .hero-slogan { max-width:20ch; font-size:clamp(38px,5.4vw,56px); }
  .hero-viewer-wrap { min-height:auto; border-left:0; padding:50px clamp(24px,7vw,70px); }
  .viewer-canvas-wrap { height:min(70vw,620px); }
  .manifesto-grid,.science-heading-row,.architecture-intro,.ecosystem-heading { grid-template-columns:1fr; align-items:start; }
  .manifesto-copy,.architecture-intro-copy { max-width:680px; }
  .thesis-cards { grid-template-columns:1fr; }
  .thesis-card { min-height:430px; }
  .science-icon { margin:70px 0 35px; }
  .protocol-lab { grid-template-columns:1fr; }
  .protocol-visual { border-right:0; border-bottom:1px solid var(--line-strong); }
  .protocol-panel { min-height:520px; }
  .architecture-steps { grid-template-columns:repeat(2,1fr); }
  .audiences-inner { grid-template-columns:1fr; }
  .audience-title { max-width:650px; }
  .ecosystem-card-wide { grid-column:span 1; }
  .site-footer { grid-template-columns:1fr; }
  .footer-legal { grid-template-columns:1fr; gap:18px; }
}

@media (max-width: 720px) {
  .site-header { padding:0 16px; }
  .brand-logo { width:38px; height:38px; }
  .mobile-menu nav a { padding:18px 0; }
  .whitepaper-band-link { grid-template-columns:1fr auto; min-height:0; padding:28px 20px 32px; gap:24px 18px; }
  .whitepaper-identity { gap:14px; }
  .whitepaper-identity img { width:54px; height:54px; }
  .whitepaper-identity small { max-width:26ch; }
  .whitepaper-title-wrap .micro-label { margin-bottom:10px; }
  .whitepaper-title-wrap h2 { font-size:clamp(38px,11.5vw,54px); }
  .whitepaper-arrow { width:54px; height:54px; font-size:24px; }
  .brand-version,.site-header .button-small { display:none; }
  .header-actions { gap:10px; }
  .page-grid { background-size:48px 48px; }
  .cursor-glow { display:none; }
  .hero-copy { padding:38px 20px 0; }
  .eyebrow-code { display:none; }
  .hero-title { margin-top:52px; }
  .hero-wordmark { font-size:clamp(58px,17.5vw,78px); letter-spacing:-.032em; }
  .hero-slogan { max-width:none; margin-top:28px; padding-left:16px; font-size:clamp(28px,8.7vw,38px); line-height:1.12; letter-spacing:-.014em; }
  .hero-bottom { padding:60px 0 44px; gap:34px; }
  .hero-ctas { flex-direction:column; align-items:flex-start; }
  .hero-metrics { grid-template-columns:repeat(2,1fr); margin:0 -20px; }
  .hero-metrics > div:nth-child(2) { border-right:0; }
  .hero-metrics > div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .hero-viewer-wrap { padding:24px 12px 42px; }
  .viewer-topbar { min-height:62px; padding:13px; }
  .viewer-signal { display:none; }
  .viewer-canvas-wrap { height:115vw; max-height:560px; min-height:390px; }
  .viewer-coordinate,.viewer-hint { display:none; }
  .viewer-readout { grid-template-columns:repeat(2,1fr); }
  .viewer-readout > div:nth-child(2) { border-right:0; }
  .viewer-readout > div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .viewer-controls { align-items:flex-start; }
  .structure-tabs { flex-wrap:wrap; }
  .viewer-loadbar { grid-template-columns:1fr 1fr; }
  .load-divider { display:none; }
  .file-button { grid-column:1/-1; }
  .discipline-marquee .marquee-content { min-height:52px; }
  .section-frame { padding:90px 20px; }
  .section-kicker { align-items:flex-start; }
  .section-kicker span:last-child { max-width:45%; text-align:right; }
  .section-title { font-size:clamp(49px,14.2vw,78px); line-height:.97; letter-spacing:-.032em; }
  .manifesto-grid,.science-heading-row,.architecture-intro,.ecosystem-heading { padding:65px 0 80px; }
  .manifesto-copy .large-copy { font-size:24px; }
  .thesis-card { min-height:460px; padding:20px; }
  .field-grid { grid-template-columns:1fr; }
  .field-card-wide { grid-column:span 1; }
  .field-card { min-height:390px; }
  .helix-graphic { width:100%; right:-22%; }
  .systems-orbit { right:2%; bottom:-7%; width:250px; height:250px; }
  .protocol-visual { min-height:560px; }
  .protocol-visual-label { display:none; }
  .protocol-core { width:130px; height:130px; }
  .protocol-core span { font-size:42px; }
  .architecture-steps { grid-template-columns:1fr; }
  .audiences-inner { padding-top:90px; padding-bottom:90px; }
  .audience-row { grid-template-columns:50px 1fr 22px; gap:16px; padding:28px 0; }
  .audience-row p { grid-column:2/4; }
  .ecosystem-grid { grid-template-columns:1fr; }
  .ecosystem-card { min-height:500px; }
  .explorer-visual { grid-template-columns:1fr; }
  .explorer-lines { min-height:110px; }
  .final-cta { min-height:780px; }
  .final-cta::before { width:150vw; height:150vw; }
  .final-cta::after { width:110vw; height:110vw; }
  .final-cta-orbit { width:90vw; }
  .audience-title h2 { font-size:clamp(52px,14.2vw,74px); }
  .final-cta h2 { font-size:clamp(54px,15.5vw,84px); }
  .final-actions { flex-direction:column; align-items:center; }
  .final-actions .button { width:min(100%,320px); }
  .site-footer { padding:60px 20px 24px; gap:60px; }
  .footer-links { grid-template-columns:1fr 1fr; }
}

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


/* ==========================================================
   GenesisL1 v4 — White Editorial
   White-first scientific interface with restrained blue signal.
   ========================================================== */
:root {
  --paper: #ffffff;
  --paper-solid: #ffffff;
  --ink: #11161d;
  --ink-2: #1a212a;
  --muted: #626b77;
  --line: rgba(17, 22, 29, 0.095);
  --line-strong: rgba(17, 22, 29, 0.18);
  --blue: #245cae;
  --blue-rgb: 36, 92, 174;
  --blue-deep: #174680;
  --cyan: #5c8fc7;
  --cyan-rgb: 92, 143, 199;
  --cyan-deep: #386b9f;
  --cyan-dark: #254866;
  --cyan-shadow-rgb: 56, 107, 159;
  --violet: #6a76a7;
  --violet-rgb: 106, 118, 167;
  --acid: #e6eef8;
  --acid-rgb: 230, 238, 248;
  --live: #245cae;
  --code-string: #b8d5ff;
  --ecosystem-primary-bg: #fbfcfe;
  --accent-deep: #6488b8;
  --accent-dark: #294c75;
}

html,
body { background: #fff; }
body { color: var(--ink); }
::selection { color: var(--ink); background: #dbe8f6; }
.page-grid {
  opacity: .5;
  background-image:
    linear-gradient(to right, rgba(17,22,29,.025) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(17,22,29,.025) 1px, transparent 1px);
}
.cursor-glow {
  opacity: .07;
  background: radial-gradient(circle, rgba(var(--blue-rgb),.25), rgba(var(--cyan-rgb),.08) 36%, transparent 69%);
}
.site-header,
.site-header.is-scrolled {
  background: rgba(255,255,255,.94);
  border-bottom-color: rgba(17,22,29,.1);
}
.site-header.is-scrolled { box-shadow: 0 12px 38px rgba(17,22,29,.055); }
.desktop-nav a,
.header-docs { color: #2f3742; }

.button-paper {
  color: var(--ink);
  background: #fff;
  border-color: var(--line-strong);
  box-shadow: 0 8px 22px rgba(17,22,29,.06);
}
.button-paper:hover {
  color: #fff;
  background: var(--ink);
  border-color: var(--ink);
  box-shadow: 0 14px 30px rgba(17,22,29,.14);
}
.button-accent {
  color: #fff;
  background: var(--blue);
  box-shadow: 0 14px 34px rgba(var(--blue-rgb),.18);
}
.button-accent:hover { background: var(--blue-deep); }
.button-dark { background: var(--ink); }

.hero,
.hero-copy,
.section-frame { background: #fff; }
.hero-copy::after { -webkit-text-stroke-color: rgba(17,22,29,.042); }
.hero-slogan { color: #181e26; border-left-color: var(--blue); }
.hero-intro { color: #3f4854; }
.hero-viewer-wrap {
  background:
    radial-gradient(circle at 24% 20%, rgba(var(--cyan-rgb),.06), transparent 34%),
    radial-gradient(circle at 86% 78%, rgba(var(--blue-rgb),.055), transparent 38%),
    #fbfcfd;
}
.viewer-shell {
  background: rgba(255,255,255,.97);
  border-color: rgba(17,22,29,.16);
  box-shadow: 0 34px 88px rgba(17,22,29,.105), inset 0 0 0 1px rgba(255,255,255,.9);
}
.viewer-canvas-wrap { background: linear-gradient(180deg,#fff,#f6f8fa); }
.control-chip,
.icon-button,
.load-button,
.file-button { background: #fff; }

.whitepaper-band {
  color: var(--ink);
  background: #fff;
  border-left-color: var(--line);
  border-right-color: var(--line);
}
.whitepaper-band::before {
  opacity: .48;
  background-image:
    linear-gradient(rgba(17,22,29,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(17,22,29,.035) 1px, transparent 1px);
}
.whitepaper-band-link {
  border-top: 1px solid var(--line-strong);
  border-bottom: 1px solid var(--line-strong);
}
.whitepaper-band-link:hover { background: #f8fafc; }
.whitepaper-identity img {
  box-shadow: 0 0 0 1px var(--line-strong), 0 16px 38px rgba(17,22,29,.09);
}
.whitepaper-identity b { color: #2a3542; }
.whitepaper-identity small,
.whitepaper-title-wrap .micro-label { color: var(--muted); }
.whitepaper-arrow {
  color: #fff;
  background: var(--ink);
  box-shadow: 0 14px 34px rgba(17,22,29,.14);
}
.whitepaper-band-link:hover .whitepaper-arrow { color: #fff; background: var(--blue); }

.discipline-marquee {
  color: #28313c;
  background: #fff;
  border-color: var(--line-strong);
}
.marquee-content i { background: var(--blue); }

.section-title em,
.manifesto-title em,
.audience-title em,
.science-heading em { color: var(--ink); }
.text-link-strong { color: var(--ink); }

.thesis-card { background: #fff; }
.thesis-card:hover { background: #fff; box-shadow: 0 24px 64px rgba(17,22,29,.085); }
.thesis-card-featured,
.thesis-card-featured:hover {
  color: var(--ink);
  background: linear-gradient(145deg,#fbfcfe,#f3f6f9);
  box-shadow: inset 0 3px 0 var(--blue);
}
.thesis-card-featured .science-icon { color: var(--blue); }
.thesis-card-featured p { color: var(--muted); }

.science-fields {
  color: var(--ink);
  background: #fbfcfd;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.science-fields::before {
  opacity: .65;
  background-image:
    linear-gradient(rgba(17,22,29,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(17,22,29,.025) 1px,transparent 1px);
}
.science-fields-inner { border-color: var(--line); background: transparent; }
.section-kicker-light { border-color: var(--line-strong); color: var(--muted); }
.section-kicker-light span:first-child { color: var(--ink); }
.science-heading-row p { color: var(--muted); }
.field-grid { border-color: var(--line-strong); }
.field-card {
  color: var(--ink);
  background: rgba(255,255,255,.74);
  border-color: var(--line-strong);
}
.field-card:hover { background: #fff; }
.field-meta { color: var(--muted); }
.field-card p { color: var(--muted); }
.systems-orbit .orbit { border-color: rgba(17,22,29,.2); }
.systems-orbit i { background: var(--blue); box-shadow: 0 0 36px rgba(var(--blue-rgb),.27); }

.protocol-lab {
  border-color: var(--line-strong);
  box-shadow: 0 28px 72px rgba(17,22,29,.075);
}
.protocol-visual { background: linear-gradient(145deg,#fff,#f6f8fa); }
.protocol-panel { background: #111923; color: #fff; }
.panel-state { color: #dce9fa; }
.code-key { color: #9ab9e6; }
.code-string { color: #c9ddfa; }
.code-number { color: #eef4fb; }
.panel-proof strong { color: #e5eef9; }
.hash-bars i { background: rgba(255,255,255,.27); }
.step-no,
.audience-index { color: #687686; }

.audiences {
  background: #fafbfd;
  border-color: var(--line);
}
.audience-row:hover { background: #fff; }

.ecosystem-card,
.ecosystem-card-primary { background: #fff; }
.ecosystem-card-primary { box-shadow: inset 0 3px 0 var(--blue); }
.ecosystem-card:hover { background: #fff; box-shadow: 0 26px 70px rgba(17,22,29,.1); }
.dataset-visual div { background: #fbfcfd; }
.explorer-visual { background: linear-gradient(135deg,#fff,#f5f7f9); }
.explorer-lines strong { color: var(--ink); }

.cipher-visual { background: #111923; }
.cipher-lock { border-color: rgba(225,236,249,.72); background: rgba(255,255,255,.025); }
.cipher-lock::before { border-color: rgba(225,236,249,.72); }
.cipher-lock i { background: #e1ecf8; }

.final-cta {
  color: #fff;
  background: #0f151d;
  border-top-color: rgba(255,255,255,.12);
}
.final-cta h2 em { color: #fff; }
.final-cta-copy .micro-label,
.final-cta-copy p { color: rgba(255,255,255,.62); }
.final-cta .button-accent {
  color: var(--ink);
  background: #fff;
  box-shadow: 0 14px 34px rgba(0,0,0,.2);
}
.final-cta .button-accent:hover { background: #edf2f7; }
.final-cta .button-ghost-light { color: #fff; border-color: rgba(255,255,255,.34); }
.final-cta-orbit i { background: #fff; box-shadow: 0 0 30px rgba(255,255,255,.32); }
.final-cta-orbit i:nth-child(3) { background: #8eb4dd; }

.site-footer { background: #fff; }

@media (max-width: 1024px) {
  .mobile-menu { background: #fff; }
}

/* Whitepaper title contrast on white surface */
.whitepaper-title-wrap h2 { color: var(--ink); }


/* ==========================================================
   GenesisL1 v5 — scientific markets and research economy
   ========================================================== */
.scientific-markets {
  position: relative;
  overflow: hidden;
  background: #fff;
  border-bottom: 1px solid var(--line);
}
.scientific-markets::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .52;
  background-image:
    linear-gradient(rgba(17,22,29,.024) 1px, transparent 1px),
    linear-gradient(90deg, rgba(17,22,29,.024) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(to bottom, #000 0%, transparent 68%);
}
.scientific-markets > * { position: relative; z-index: 1; }
.markets-intro {
  display: grid;
  grid-template-columns: minmax(0,1.18fr) minmax(340px,.82fr);
  gap: 8vw;
  align-items: end;
  padding: clamp(70px,9vw,145px) 0 clamp(80px,9vw,140px);
}
.markets-intro-copy { max-width: 580px; }
.markets-intro-copy > p {
  margin: 0;
  color: #3d4754;
  font-size: 20px;
  line-height: 1.52;
  letter-spacing: -.018em;
}
.market-primitives {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 32px;
}
.market-primitives span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 11px;
  border: 1px solid var(--line-strong);
  background: rgba(255,255,255,.76);
  color: #4d5967;
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
  text-transform: uppercase;
}
.market-terminal {
  overflow: hidden;
  border: 1px solid var(--line-strong);
  background: #fff;
  box-shadow: 0 30px 84px rgba(17,22,29,.085);
}
.market-terminal-head {
  min-height: 76px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  padding: 14px 18px;
  color: #fff;
  background: #101822;
  border-bottom: 1px solid rgba(255,255,255,.12);
}
.market-terminal-brand { display: flex; align-items: center; gap: 13px; min-width: 0; }
.market-terminal-mark {
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.28);
  font: 500 14px/1 var(--mono);
}
.market-terminal-brand > span:last-child { min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.market-terminal-brand b {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font: 500 10px/1.2 var(--mono);
  letter-spacing: .11em;
  text-transform: uppercase;
}
.market-terminal-brand small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: rgba(255,255,255,.5);
  font: 400 9px/1.2 var(--mono);
  letter-spacing: .04em;
}
.market-terminal-status {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 9px;
  color: rgba(255,255,255,.58);
  font: 400 8px/1 var(--mono);
  letter-spacing: .08em;
  text-transform: uppercase;
}
.market-terminal-status i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #8eb4dd;
  box-shadow: 0 0 0 5px rgba(142,180,221,.1);
}
.market-mode-tabs {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  background: #f7f9fb;
  border-bottom: 1px solid var(--line-strong);
}
.market-mode-tab {
  min-height: 54px;
  padding: 0 18px;
  border: 0;
  border-right: 1px solid var(--line-strong);
  background: transparent;
  color: #56616f;
  cursor: pointer;
  font: 500 9px/1 var(--mono);
  letter-spacing: .11em;
  text-transform: uppercase;
  transition: color .2s ease, background .2s ease;
}
.market-mode-tab:last-child { border-right: 0; }
.market-mode-tab:hover { color: var(--ink); background: #fff; }
.market-mode-tab.is-active { color: #fff; background: var(--blue); }
.market-mode-tab:focus-visible { outline: 2px solid var(--blue); outline-offset: -4px; }
.market-terminal-body {
  display: grid;
  grid-template-columns: minmax(0,1.46fr) minmax(370px,.54fr);
  min-height: 670px;
}
.market-chart-panel {
  min-width: 0;
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--line-strong);
  background: #fff;
}
.market-chart-head {
  min-height: 104px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  padding: 22px 24px;
  border-bottom: 1px solid var(--line);
}
.market-chart-head > div:first-child { display: flex; flex-direction: column; gap: 10px; }
.market-chart-head > div:first-child strong {
  font-family: var(--display);
  font-size: clamp(26px,2.1vw,38px);
  line-height: 1;
  letter-spacing: -.025em;
  font-weight: 500;
}
.market-chart-state { text-align: right; display: flex; flex-direction: column; gap: 7px; }
.market-chart-state span,
.market-chart-state strong {
  font: 500 8px/1 var(--mono);
  letter-spacing: .09em;
  text-transform: uppercase;
}
.market-chart-state span { color: var(--muted); }
.market-chart-state strong { color: var(--blue); }
.market-chart-wrap {
  position: relative;
  flex: 1;
  min-height: 390px;
  overflow: hidden;
  background:
    linear-gradient(180deg, rgba(var(--blue-rgb),.018), transparent 45%),
    #fff;
}
.market-chart { display: block; width: 100%; height: 100%; min-height: 390px; }
.market-chart-grid path {
  fill: none;
  stroke: rgba(17,22,29,.085);
  stroke-width: 1;
  vector-effect: non-scaling-stroke;
}
.market-chart-area {
  fill: url(#marketAreaGradient);
  transition: opacity .18s ease;
}
.market-chart-line {
  fill: none;
  stroke: var(--blue);
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
  filter: drop-shadow(0 4px 8px rgba(var(--blue-rgb),.13));
  transition: opacity .18s ease;
}
.market-chart-cursor {
  fill: none;
  stroke: url(#marketCursorGradient);
  stroke-width: 1;
  vector-effect: non-scaling-stroke;
}
.market-chart-point {
  fill: #fff;
  stroke: var(--blue);
  stroke-width: 3;
  vector-effect: non-scaling-stroke;
  transition: opacity .18s ease;
}
.market-chart-point-pulse { animation: marketPulse 2.5s ease-in-out infinite; transform-box: fill-box; transform-origin: center; }
.market-chart-axis text {
  fill: #858e99;
  font: 500 9px/1 var(--mono);
  letter-spacing: .08em;
}
.market-chart-line.is-updating,
.market-chart-area.is-updating,
.market-chart-point.is-updating { opacity: .12; }
.market-chart-watermark {
  position: absolute;
  right: 20px;
  bottom: 18px;
  color: rgba(17,22,29,.23);
  font: 500 8px/1 var(--mono);
  letter-spacing: .12em;
}
.market-kpis {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  border-top: 1px solid var(--line-strong);
}
.market-kpis > div {
  min-height: 92px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
  padding: 15px 18px;
  border-right: 1px solid var(--line-strong);
}
.market-kpis > div:last-child { border-right: 0; }
.market-kpis span {
  color: var(--muted);
  font: 500 8px/1 var(--mono);
  letter-spacing: .09em;
  text-transform: uppercase;
}
.market-kpis strong {
  font-family: var(--display);
  font-size: 18px;
  font-weight: 500;
  letter-spacing: -.015em;
}
.market-matrix { display: flex; flex-direction: column; background: #f8fafc; }
.market-matrix-head {
  min-height: 48px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 18px;
  padding: 0 18px;
  border-bottom: 1px solid var(--line-strong);
  color: var(--muted);
  font: 500 8px/1 var(--mono);
  letter-spacing: .09em;
  text-transform: uppercase;
}
.market-matrix-row {
  min-height: 92px;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 22px;
  padding: 15px 18px;
  border-bottom: 1px solid var(--line);
  transition: background .2s ease;
}
.market-matrix-row:hover { background: #fff; }
.market-matrix-row > div { min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.market-matrix-row strong { font-size: 14px; font-weight: 700; letter-spacing: -.01em; }
.market-matrix-row span { color: var(--muted); font-size: 11px; }
.market-matrix-row b {
  color: var(--blue);
  font: 500 8px/1.25 var(--mono);
  letter-spacing: .07em;
  text-align: right;
  text-transform: uppercase;
}
.market-settlement-card {
  margin-top: auto;
  padding: 28px 22px;
  color: #fff;
  background: #101822;
}
.market-settlement-card > strong {
  display: block;
  margin: 16px 0 12px;
  font-family: var(--display);
  font-size: 25px;
  line-height: 1.08;
  letter-spacing: -.025em;
  font-weight: 500;
}
.market-settlement-card p { margin: 0; color: rgba(255,255,255,.58); font-size: 12px; line-height: 1.55; }
.market-settlement-card .micro-label { color: rgba(255,255,255,.46); }
.market-terminal-foot {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  border-top: 1px solid var(--line-strong);
  background: #fff;
}
.market-terminal-foot span {
  min-height: 54px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  border-right: 1px solid var(--line-strong);
  color: #5d6774;
  font: 500 8px/1.2 var(--mono);
  letter-spacing: .09em;
  text-align: center;
  text-transform: uppercase;
}
.market-terminal-foot span:last-child { border-right: 0; }
.market-use-cases {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  margin-top: 64px;
  border-top: 1px solid var(--line-strong);
  border-left: 1px solid var(--line-strong);
}
.market-use-card {
  min-height: 370px;
  display: flex;
  flex-direction: column;
  padding: 24px;
  border-right: 1px solid var(--line-strong);
  border-bottom: 1px solid var(--line-strong);
  background: rgba(255,255,255,.78);
  transition: background .25s ease, transform .25s ease, box-shadow .25s ease;
}
.market-use-card:first-child { box-shadow: inset 0 3px 0 var(--blue); }
.market-use-card:hover { z-index: 2; background: #fff; transform: translateY(-5px); box-shadow: 0 22px 58px rgba(17,22,29,.085); }
.market-use-index {
  color: var(--muted);
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
}
.market-use-card h3 {
  max-width: 10ch;
  margin: 66px 0 22px;
  font-size: clamp(30px,2.4vw,44px);
  line-height: 1.02;
  letter-spacing: -.032em;
  font-weight: 500;
}
.market-use-card p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.6; }
.market-use-tags { display: flex; flex-wrap: wrap; gap: 12px; margin-top: auto; padding-top: 38px; }
.market-use-tags span {
  color: #67717e;
  font: 500 8px/1 var(--mono);
  letter-spacing: .09em;
}
.market-integrity {
  display: grid;
  grid-template-columns: minmax(160px,.42fr) minmax(0,1.3fr) auto;
  align-items: center;
  gap: 44px;
  margin-top: 64px;
  padding: 34px 28px;
  border: 1px solid var(--line-strong);
  background: #f8fafc;
}
.market-integrity p { margin: 0; color: #515c69; font-size: 13px; line-height: 1.6; }
.market-integrity strong {
  color: var(--ink);
  font: 500 10px/1.3 var(--mono);
  letter-spacing: .11em;
  white-space: nowrap;
}
@keyframes marketPulse {
  0%,100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.55); opacity: .55; }
}

@media (max-width: 1280px) {
  .markets-intro { grid-template-columns: 1fr 1fr; gap: 5vw; }
  .market-terminal-body { grid-template-columns: 1fr; }
  .market-chart-panel { border-right: 0; border-bottom: 1px solid var(--line-strong); }
  .market-matrix { display: grid; grid-template-columns: 1fr 1fr; }
  .market-matrix-head { grid-column: 1/-1; }
  .market-matrix-row { border-right: 1px solid var(--line); }
  .market-settlement-card { margin: 0; }
  .market-use-cases { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 1024px) {
  .markets-intro { grid-template-columns: 1fr; align-items: start; }
  .markets-intro-copy { max-width: 700px; }
  .market-terminal-head { align-items: flex-start; flex-direction: column; gap: 12px; }
  .market-terminal-status { padding-left: 55px; }
  .market-chart-head { min-height: 120px; }
  .market-integrity { grid-template-columns: 1fr; gap: 18px; }
  .market-integrity strong { white-space: normal; }
}

@media (max-width: 720px) {
  .mobile-menu { overflow-y: auto; padding-bottom: 100px; }
  .mobile-menu nav a { padding: 14px 0; font-size: clamp(30px,9.5vw,46px); }
  .markets-intro { padding: 65px 0 80px; }
  .markets-intro-copy > p { font-size: 17px; }
  .market-primitives { gap: 6px; }
  .market-primitives span { font-size: 7px; }
  .market-terminal { margin-left: -8px; margin-right: -8px; }
  .market-terminal-head { min-height: 0; padding: 16px 14px; }
  .market-terminal-mark { width: 38px; height: 38px; }
  .market-terminal-brand small { white-space: normal; }
  .market-terminal-status { padding-left: 51px; font-size: 7px; }
  .market-mode-tab { min-height: 50px; padding: 0 8px; font-size: 7px; letter-spacing: .07em; }
  .market-chart-head { min-height: 0; align-items: flex-start; flex-direction: column; padding: 20px 16px; }
  .market-chart-state { text-align: left; }
  .market-chart-wrap,
  .market-chart { min-height: 290px; }
  .market-kpis { grid-template-columns: repeat(2,1fr); }
  .market-kpis > div:nth-child(2) { border-right: 0; }
  .market-kpis > div:nth-child(-n+2) { border-bottom: 1px solid var(--line-strong); }
  .market-matrix { grid-template-columns: 1fr; }
  .market-matrix-head { grid-column: 1; }
  .market-matrix-row { min-height: 88px; border-right: 0; }
  .market-terminal-foot { grid-template-columns: repeat(2,1fr); }
  .market-terminal-foot span:nth-child(2) { border-right: 0; }
  .market-terminal-foot span:nth-child(-n+2) { border-bottom: 1px solid var(--line-strong); }
  .market-use-cases { grid-template-columns: 1fr; margin-top: 44px; }
  .market-use-card { min-height: 350px; }
  .market-use-card h3 { margin-top: 54px; }
  .market-integrity { margin-top: 44px; padding: 26px 20px; }
}

@media (max-height: 720px) and (max-width: 1024px) {
  .mobile-menu-foot { display: none; }
}


/* White Editorial treatment for the markets section. */
html[data-variant="white-editorial"] .scientific-markets { background: #fff; }
html[data-variant="white-editorial"] .market-terminal-head { background: #111923; }
html[data-variant="white-editorial"] .market-mode-tab.is-active { background: var(--blue); }
html[data-variant="white-editorial"] .market-chart-wrap {
  background:
    radial-gradient(circle at 88% 22%, rgba(var(--blue-rgb),.055), transparent 34%),
    linear-gradient(180deg,#fff,#fbfcfe);
}
html[data-variant="white-editorial"] .market-settlement-card { background: #111923; }

/* ==========================================================
   GenesisL1 v7 — L1coin native-asset system
   ========================================================== */
.desktop-nav { gap: clamp(16px, 1.55vw, 28px); }
.desktop-nav a { font-size: 13px; }

.l1-coin.section-frame {
  position: relative;
  overflow: hidden;
  padding-top: clamp(92px, 8vw, 142px);
  padding-bottom: clamp(96px, 8.5vw, 154px);
  background:
    radial-gradient(circle at 50% 22%, rgba(var(--blue-rgb), .038), transparent 30%),
    linear-gradient(180deg, #fff 0%, #fefefe 100%);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.l1-coin.section-frame::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .46;
  background-image:
    linear-gradient(rgba(7,17,29,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(7,17,29,.018) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.6), transparent 76%);
}
.l1-coin > * { position: relative; z-index: 1; }

.l1-native-label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  color: var(--blue);
  font: 500 11px/1 var(--mono);
  letter-spacing: .16em;
}
.l1-native-rule {
  width: clamp(42px, 5vw, 76px);
  height: 1px;
  background: rgba(var(--blue-rgb), .28);
}
.l1-native-label-copy {
  display: inline-flex;
  align-items: center;
  gap: 13px;
  white-space: nowrap;
}
.l1-native-label-copy i {
  width: 7px;
  height: 7px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: var(--blue);
  box-shadow: 0 0 0 1px rgba(var(--blue-rgb), .22), 0 0 18px rgba(var(--blue-rgb), .28);
}

.l1-coin-header {
  max-width: 1320px;
  margin: clamp(30px, 3vw, 50px) auto 0;
  text-align: center;
}
.l1-coin-header h2 {
  margin: 0;
  color: #0a1420;
  font-family: var(--display);
  font-size: clamp(52px, 5.35vw, 92px);
  line-height: 1.035;
  letter-spacing: -.047em;
  font-weight: 400;
  text-wrap: balance;
}
.l1-coin-header h2 span { display: block; }
.l1-coin-header p {
  max-width: 890px;
  margin: clamp(24px, 2.3vw, 38px) auto 0;
  color: #5d6877;
  font-size: clamp(15px, 1.08vw, 18px);
  line-height: 1.7;
  text-wrap: balance;
}

.l1-asset-stage {
  max-width: 1510px;
  margin: clamp(60px, 5.5vw, 92px) auto 0;
  display: grid;
  grid-template-columns: minmax(190px, 232px) minmax(570px, 1fr) minmax(190px, 232px);
  align-items: center;
  gap: clamp(22px, 3vw, 52px);
}
.l1-side-metric {
  min-height: 398px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 32px 30px;
  border: 1px solid rgba(7,17,29,.13);
  border-radius: 10px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 18px 56px rgba(7,17,29,.035), inset 0 1px 0 #fff;
}
.l1-side-metric-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(var(--blue-rgb),.16);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 8px 22px rgba(var(--blue-rgb),.08);
  color: var(--blue);
}
.l1-side-metric-icon svg {
  width: 24px;
  height: 24px;
  stroke: currentColor;
  stroke-width: 1.45;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.l1-side-metric strong {
  display: block;
  margin-top: 34px;
  color: #1b61d9;
  font-family: var(--display);
  font-size: clamp(48px, 4vw, 68px);
  line-height: .9;
  letter-spacing: -.045em;
  font-weight: 400;
}
.l1-side-metric > span {
  margin-top: 20px;
  color: #1c2530;
  font: 500 11px/1.55 var(--mono);
  letter-spacing: .08em;
}
.l1-metric-divider {
  width: 52px;
  height: 1px;
  margin: 24px 0 24px;
  background: rgba(7,17,29,.17);
}
.l1-side-metric p {
  margin: 0;
  color: #5f6a79;
  font-size: 13px;
  line-height: 1.65;
}

.l1-coin-diagram {
  position: relative;
  min-height: 590px;
  isolation: isolate;
}
.l1-coin-diagram::before {
  content: "";
  position: absolute;
  inset: 7% 4%;
  z-index: -2;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(var(--blue-rgb),.055), rgba(var(--blue-rgb),.015) 42%, transparent 70%);
  filter: blur(2px);
}
.l1-diagram-axis {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: -1;
  pointer-events: none;
  transform: translate(-50%, -50%);
  background: rgba(var(--blue-rgb),.11);
}
.l1-diagram-axis-y { width: 1px; height: 84%; }
.l1-diagram-axis-x { width: 84%; height: 1px; }
.l1-diagram-ring {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 0;
  aspect-ratio: 1;
  border: 1px solid rgba(var(--blue-rgb),.16);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.l1-diagram-ring::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -4px;
  width: 7px;
  height: 7px;
  margin-top: -4px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: var(--blue);
  box-shadow: 0 0 0 1px rgba(var(--blue-rgb),.22);
}
.l1-diagram-ring-1 { width: min(76%, 535px); animation: l1DiagramSpin 42s linear infinite; }
.l1-diagram-ring-2 { width: min(64%, 448px); border-style: dashed; border-color: rgba(var(--blue-rgb),.25); animation: l1DiagramSpinReverse 32s linear infinite; }
.l1-diagram-ring-3 { width: min(51%, 355px); border-color: rgba(var(--blue-rgb),.13); animation: l1DiagramSpin 25s linear infinite; }
.l1-diagram-ring-4 { width: min(38%, 266px); border-color: rgba(7,17,29,.15); box-shadow: 0 18px 60px rgba(7,17,29,.055); }
.l1-diagram-ring-2::after { background: #8ea1b7; }
.l1-diagram-ring-3::after { background: #fff; border-color: var(--blue); }
.l1-diagram-ring-4::after { display: none; }
.l1-orbit-node {
  position: absolute;
  z-index: 2;
  width: 8px;
  height: 8px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: var(--blue);
  box-shadow: 0 0 0 1px rgba(var(--blue-rgb),.24), 0 0 18px rgba(var(--blue-rgb),.22);
}
.node-north { left: calc(50% - 4px); top: 7.4%; }
.node-east { right: 7.3%; top: calc(50% - 4px); }
.node-south { left: calc(50% - 4px); bottom: 7.4%; }
.node-west { left: 7.3%; top: calc(50% - 4px); }

.l1-logo-medallion {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 4;
  width: clamp(190px, 19vw, 246px);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  transform: translate(-50%, -50%);
  border: 1px solid rgba(7,17,29,.18);
  border-radius: 50%;
  background: rgba(255,255,255,.97);
  box-shadow:
    0 32px 74px rgba(7,17,29,.12),
    inset 0 0 0 10px #f8fafc,
    inset 0 0 0 11px rgba(7,17,29,.035);
}
.l1-logo-medallion img {
  position: relative;
  z-index: 2;
  width: 76%;
  height: 76%;
  border-radius: 50%;
  object-fit: contain;
}
.l1-logo-halo {
  position: absolute;
  inset: -26px;
  z-index: -1;
  border: 1px solid rgba(var(--blue-rgb),.08);
  border-radius: 50%;
  box-shadow: 0 0 80px rgba(var(--blue-rgb),.055);
}

.l1-diagram-label {
  position: absolute;
  z-index: 5;
  display: flex;
  align-items: center;
  gap: 10px;
  color: #617084;
  font: 500 10px/1.35 var(--mono);
  letter-spacing: .08em;
  white-space: nowrap;
}
.l1-diagram-label b { font-weight: 500; }
.l1-diagram-label i {
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  border: 2px solid #fff;
  border-radius: 50%;
  background: var(--blue);
  box-shadow: 0 0 0 1px rgba(var(--blue-rgb),.2);
}
.l1-diagram-label::after {
  content: "";
  position: absolute;
  top: 50%;
  width: clamp(42px, 5.8vw, 90px);
  height: 1px;
  background: linear-gradient(90deg, rgba(var(--blue-rgb),.18), rgba(var(--blue-rgb),.05));
}
.l1-label-left { flex-direction: row-reverse; text-align: right; }
.l1-label-left::after { left: calc(100% + 9px); }
.l1-label-right::after { right: calc(100% + 9px); transform: rotate(180deg); }
.l1-label-gas { left: 1%; top: 24%; }
.l1-label-govern { left: -7%; top: 48%; }
.l1-label-pool { left: -4%; bottom: 20%; }
.l1-label-stake { right: 0; top: 23%; }
.l1-label-exchange { right: -7%; top: 48%; }
.l1-label-science { right: -4%; bottom: 19%; }

.l1-role-grid {
  max-width: 1510px;
  margin: clamp(56px, 5.5vw, 90px) auto 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.l1-role-card {
  min-height: 272px;
  display: flex;
  flex-direction: column;
  padding: 28px 30px 30px;
  border: 1px solid rgba(7,17,29,.13);
  border-radius: 10px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 12px 42px rgba(7,17,29,.025), inset 0 1px 0 #fff;
  transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease;
}
.l1-role-card:hover {
  transform: translateY(-5px);
  border-color: rgba(var(--blue-rgb),.28);
  box-shadow: 0 24px 64px rgba(7,17,29,.07);
}
.l1-role-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
}
.l1-role-icon {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  color: var(--blue);
  border: 1px solid rgba(var(--blue-rgb),.14);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 8px 20px rgba(var(--blue-rgb),.065);
}
.l1-role-icon svg {
  width: 28px;
  height: 28px;
  stroke: currentColor;
  stroke-width: 1.35;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.l1-role-index {
  color: var(--blue);
  font: 500 13px/1 var(--mono);
  letter-spacing: .04em;
}
.l1-role-card h3 {
  margin: 35px 0 12px;
  color: #111a25;
  font-family: var(--display);
  font-size: clamp(25px, 1.7vw, 31px);
  line-height: 1.08;
  letter-spacing: -.035em;
  font-weight: 400;
}
.l1-role-divider {
  width: 100%;
  height: 1px;
  margin-bottom: 16px;
  background: rgba(7,17,29,.16);
}
.l1-role-card p {
  max-width: 410px;
  margin: 0;
  color: #687383;
  font-size: 13px;
  line-height: 1.62;
}

.l1-distribution-grid {
  max-width: 1510px;
  margin: 44px auto 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 26px;
}
.l1-distribution-card {
  min-height: 170px;
  display: grid;
  grid-template-columns: auto auto minmax(0,1fr);
  align-items: center;
  gap: clamp(20px, 2.2vw, 34px);
  padding: 28px 34px;
  border: 1px solid rgba(7,17,29,.13);
  border-radius: 8px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 14px 44px rgba(7,17,29,.028);
}
.l1-stat-dot {
  width: 10px;
  height: 10px;
  border: 3px solid #fff;
  border-radius: 50%;
  background: var(--blue);
  box-shadow: 0 0 0 1px rgba(var(--blue-rgb),.2), 0 0 18px rgba(var(--blue-rgb),.2);
}
.l1-distribution-card > strong {
  color: #1b61d9;
  font-family: var(--display);
  font-size: clamp(54px, 5vw, 82px);
  line-height: .9;
  letter-spacing: -.05em;
  font-weight: 400;
}
.l1-distribution-card > div {
  min-height: 84px;
  padding-left: clamp(20px, 2vw, 34px);
  border-left: 1px solid rgba(7,17,29,.13);
}
.l1-distribution-card div > span {
  display: block;
  color: #2c3540;
  font: 500 11px/1.45 var(--mono);
  letter-spacing: .07em;
}
.l1-distribution-card p {
  max-width: 360px;
  margin: 13px 0 0;
  color: #687383;
  font-size: 12px;
  line-height: 1.55;
}

.l1-final-callout {
  position: relative;
  max-width: 1510px;
  min-height: 98px;
  display: grid;
  place-items: center;
  margin: 34px auto 0;
  padding: 24px 70px;
  border: 1px solid rgba(7,17,29,.13);
  border-radius: 7px;
  background: rgba(255,255,255,.97);
}
.l1-final-callout p {
  margin: 0;
  color: #121c27;
  font-family: var(--display);
  font-size: clamp(17px, 1.45vw, 23px);
  line-height: 1.45;
  letter-spacing: -.018em;
  text-align: center;
}
.l1-corner {
  position: absolute;
  width: 18px;
  height: 18px;
  pointer-events: none;
}
.l1-corner-top {
  left: -2px;
  top: -2px;
  border-top: 3px solid var(--blue);
  border-left: 3px solid var(--blue);
}
.l1-corner-bottom {
  right: -2px;
  bottom: -2px;
  border-right: 3px solid var(--blue);
  border-bottom: 3px solid var(--blue);
}

@keyframes l1DiagramSpin {
  to { transform: translate(-50%, -50%) rotate(360deg); }
}
@keyframes l1DiagramSpinReverse {
  to { transform: translate(-50%, -50%) rotate(-360deg); }
}

@media (max-width: 1380px) {
  .l1-asset-stage {
    grid-template-columns: minmax(170px, 205px) minmax(520px, 1fr) minmax(170px, 205px);
    gap: 26px;
  }
  .l1-coin-diagram { min-height: 540px; }
  .l1-diagram-label { font-size: 9px; }
  .l1-label-govern, .l1-label-exchange { top: 48%; }
  .l1-side-metric { min-height: 370px; padding: 28px 24px; }
}

@media (max-width: 1120px) {
  .l1-asset-stage {
    grid-template-columns: repeat(2, minmax(0,1fr));
    align-items: stretch;
    max-width: 930px;
  }
  .l1-coin-diagram {
    grid-column: 1 / -1;
    grid-row: 1;
    min-height: 600px;
    margin: 0 40px 12px;
  }
  .l1-side-metric { min-height: 290px; }
  .l1-side-metric strong { margin-top: 25px; }
  .l1-role-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .l1-role-card { min-height: 250px; }
  .l1-distribution-card { grid-template-columns: auto minmax(0,1fr); }
  .l1-distribution-card > strong { grid-row: 1 / 3; }
  .l1-distribution-card > .l1-stat-dot { display: none; }
  .l1-distribution-card > div { min-height: 0; padding-left: 24px; }
}

@media (max-width: 760px) {
  .l1-coin.section-frame {
    padding-top: 72px;
    padding-bottom: 84px;
  }
  .l1-native-label { gap: 12px; font-size: 9px; }
  .l1-native-rule { width: 34px; }
  .l1-native-label-copy { gap: 10px; }
  .l1-coin-header { margin-top: 28px; }
  .l1-coin-header h2 {
    font-size: clamp(42px, 12vw, 58px);
    line-height: 1.04;
    letter-spacing: -.043em;
  }
  .l1-coin-header h2 span { display: inline; }
  .l1-coin-header p { margin-top: 24px; font-size: 14px; line-height: 1.65; }
  .l1-asset-stage {
    grid-template-columns: 1fr;
    gap: 16px;
    margin-top: 52px;
  }
  .l1-coin-diagram {
    grid-column: 1;
    min-height: 470px;
    margin: 0 -6px 8px;
  }
  .l1-side-metric { min-height: 270px; padding: 25px 24px; }
  .l1-side-metric strong { font-size: 54px; }
  .l1-diagram-axis-y { height: 82%; }
  .l1-diagram-axis-x { width: 90%; }
  .l1-diagram-ring-1 { width: 88%; }
  .l1-diagram-ring-2 { width: 73%; }
  .l1-diagram-ring-3 { width: 58%; }
  .l1-diagram-ring-4 { width: 43%; }
  .l1-logo-medallion { width: 160px; box-shadow: 0 22px 58px rgba(7,17,29,.11), inset 0 0 0 7px #f8fafc; }
  .l1-logo-halo { inset: -18px; }
  .l1-diagram-label { gap: 6px; font-size: 7px; line-height: 1.25; }
  .l1-diagram-label i { width: 7px; height: 7px; }
  .l1-diagram-label::after { width: 24px; }
  .l1-label-gas { left: 1%; top: 22%; }
  .l1-label-govern { left: -1%; top: 47%; }
  .l1-label-pool { left: 0; bottom: 18%; }
  .l1-label-stake { right: 0; top: 21%; }
  .l1-label-exchange { right: -1%; top: 47%; }
  .l1-label-science { right: 0; bottom: 17%; }
  .node-north { top: 6.8%; }
  .node-east { right: 4.8%; }
  .node-south { bottom: 6.8%; }
  .node-west { left: 4.8%; }
  .l1-role-grid { grid-template-columns: 1fr; gap: 14px; margin-top: 42px; }
  .l1-role-card { min-height: 235px; padding: 24px; }
  .l1-role-card h3 { margin-top: 30px; }
  .l1-distribution-grid { grid-template-columns: 1fr; gap: 14px; margin-top: 30px; }
  .l1-distribution-card {
    min-height: 170px;
    grid-template-columns: 1fr;
    align-items: start;
    gap: 18px;
    padding: 25px 24px;
  }
  .l1-distribution-card > strong { grid-row: auto; font-size: 62px; }
  .l1-distribution-card > div { padding: 18px 0 0; border-left: 0; border-top: 1px solid rgba(7,17,29,.13); }
  .l1-final-callout { min-height: 122px; margin-top: 20px; padding: 26px 30px; }
  .l1-final-callout p { font-size: 17px; }
}

@media (max-width: 430px) {
  .l1-coin-diagram { min-height: 410px; }
  .l1-logo-medallion { width: 136px; }
  .l1-diagram-label { font-size: 6px; letter-spacing: .055em; }
  .l1-diagram-label::after { width: 15px; }
  .l1-label-pool, .l1-label-science { bottom: 15%; }
}

@media (prefers-reduced-motion: reduce) {
  .l1-diagram-ring-1,
  .l1-diagram-ring-2,
  .l1-diagram-ring-3 { animation: none; }
}

/* ==========================================================
   GenesisL1 v8 — scientific web3, L1 public goods and ecosystem
   ========================================================== */

/* Hero language and PDB tokenization note. */
.hero-metrics .metric-explained {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 4px;
  line-height: 1;
}
.hero-metrics .metric-explained small {
  display: block;
  max-width: 18ch;
  color: var(--muted);
  font: 500 8px/1.25 var(--mono);
  letter-spacing: .025em;
}
.viewer-tokenization-note {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 16px;
  min-height: 58px;
  padding: 11px 16px;
  border-top: 1px solid var(--line);
  background: rgba(255,255,255,.92);
  transition: background .22s ease, color .22s ease;
}
.viewer-tokenization-note:hover { background: #fff; color: var(--blue); }
.viewer-tokenization-note > span {
  color: var(--blue);
  font: 500 8px/1 var(--mono);
  letter-spacing: .11em;
  white-space: nowrap;
}
.viewer-tokenization-note p {
  margin: 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.45;
}
.viewer-tokenization-note b {
  color: var(--ink);
  font: 500 9px/1 var(--mono);
  letter-spacing: .06em;
}

.ecosystem-heading-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 28px;
}
.ecosystem-heading-copy p { max-width: 590px; }

/* Hierarchical GenesisL1 Forest visual. */
.forest-visual {
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 45%, rgba(var(--blue-rgb),.075), transparent 42%),
    linear-gradient(180deg, #fff, #f8fbff);
}
.forest-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .35;
  background-image:
    linear-gradient(rgba(var(--blue-rgb),.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(var(--blue-rgb),.08) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: radial-gradient(circle at 50% 50%, #000, transparent 78%);
}
.forest-visual .forest-map {
  position: absolute;
  inset: 2% 2% 10%;
  width: 96%;
  height: 88%;
  fill: none;
  stroke: none;
}
.forest-grid-lines path {
  fill: none;
  stroke: rgba(var(--blue-rgb),.075);
  stroke-width: 1;
  vector-effect: non-scaling-stroke;
}
.forest-branch {
  fill: none;
  stroke: rgba(var(--blue-rgb),.62);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 5 7;
  vector-effect: non-scaling-stroke;
  animation: forestDataFlow 10s linear infinite;
}
.forest-nodes circle {
  fill: #fff;
  stroke: var(--blue);
  stroke-width: 2;
  vector-effect: non-scaling-stroke;
  filter: drop-shadow(0 5px 8px rgba(var(--blue-rgb),.12));
  transform-box: fill-box;
  transform-origin: center;
  animation: forestNodePulse 4.2s ease-in-out infinite;
}
.tree-a { opacity: .62; }
.tree-b { opacity: 1; }
.tree-c { opacity: .72; }
.tree-a .forest-branch { animation-delay: -3s; }
.tree-c .forest-branch { animation-delay: -6s; }
.tree-a .forest-nodes circle { animation-delay: -.7s; }
.tree-c .forest-nodes circle { animation-delay: -1.5s; }
.forest-ground {
  fill: none;
  stroke: rgba(7,17,29,.22);
  stroke-width: 1.2;
  vector-effect: non-scaling-stroke;
}
.forest-glow { fill: url(#forestFade); stroke: none; }
.forest-visual > span {
  max-width: 75%;
  color: #344153;
  line-height: 1.45;
}
.ecosystem-card:hover .forest-nodes circle { animation-duration: 2.6s; }
@keyframes forestDataFlow { to { stroke-dashoffset: -120; } }
@keyframes forestNodePulse { 0%,100% { transform: scale(1); } 50% { transform: scale(1.18); } }

/* Keep diagram labels fully inside their own stage at every desktop width. */
.l1-asset-stage {
  grid-template-columns: minmax(205px, 240px) minmax(560px, 1fr) minmax(205px, 240px);
  gap: clamp(28px, 3.2vw, 56px);
}
.l1-coin-diagram { overflow: clip; }
.l1-diagram-label::after { width: clamp(30px, 3.9vw, 58px); }
.l1-label-gas { left: 5%; top: 24%; }
.l1-label-govern { left: 4%; top: 48%; }
.l1-label-pool { left: 4%; bottom: 20%; }
.l1-label-stake { right: 5%; top: 23%; }
.l1-label-exchange { right: 4%; top: 48%; }
.l1-label-science { right: 4%; bottom: 19%; }

/* Public-goods engine inside the L1 section. */
.l1-public-goods {
  max-width: 1510px;
  margin: 32px auto 0;
  display: grid;
  grid-template-columns: minmax(280px,.68fr) minmax(0,1.32fr);
  border: 1px solid rgba(7,17,29,.14);
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 18px 54px rgba(7,17,29,.035);
}
.l1-public-goods-metric {
  position: relative;
  min-height: 330px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(30px,3vw,52px);
  border-right: 1px solid var(--line);
  background:
    radial-gradient(circle at 22% 20%, rgba(var(--blue-rgb),.12), transparent 40%),
    linear-gradient(145deg,#f8fbff,#fff 72%);
}
.l1-public-goods-metric::after {
  content: "";
  position: absolute;
  inset: 24px;
  border: 1px solid rgba(var(--blue-rgb),.08);
  pointer-events: none;
}
.l1-public-goods-metric > span {
  position: relative;
  z-index: 1;
  color: var(--blue);
  font: 500 9px/1.35 var(--mono);
  letter-spacing: .11em;
}
.l1-public-goods-metric strong {
  position: relative;
  z-index: 1;
  margin-top: 28px;
  color: #155bd8;
  font-family: var(--display);
  font-size: clamp(92px,9vw,150px);
  line-height: .78;
  letter-spacing: -.075em;
  font-weight: 300;
}
.l1-public-goods-metric p {
  position: relative;
  z-index: 1;
  max-width: 310px;
  margin: 32px 0 0;
  color: #566375;
  font-size: 13px;
  line-height: 1.65;
}
.l1-public-goods-copy {
  min-height: 330px;
  padding: clamp(34px,4vw,64px);
}
.l1-public-goods-copy .micro-label { color: var(--blue); }
.l1-public-goods-copy h3 {
  max-width: 760px;
  margin: 24px 0 26px;
  color: #0a1420;
  font-family: var(--display);
  font-size: clamp(36px,3.5vw,62px);
  line-height: 1;
  letter-spacing: -.045em;
  font-weight: 400;
}
.l1-public-goods-copy p {
  max-width: 820px;
  margin: 0;
  color: #5f6b7a;
  font-size: 14px;
  line-height: 1.72;
}
.l1-public-goods-copy p + p { margin-top: 14px; }
.l1-public-goods-flow {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  border-top: 1px solid var(--line);
  background: #fbfcfe;
}
.l1-public-goods-flow > div {
  position: relative;
  min-height: 128px;
  display: grid;
  align-content: center;
  gap: 8px;
  padding: 22px 26px;
  border-right: 1px solid var(--line);
}
.l1-public-goods-flow > div:last-of-type { border-right: 0; }
.l1-public-goods-flow > div > span {
  position: absolute;
  right: 18px;
  top: 16px;
  color: var(--blue);
  font: 500 10px/1 var(--mono);
}
.l1-public-goods-flow b {
  color: #121c27;
  font-family: var(--display);
  font-size: 22px;
  letter-spacing: -.025em;
  font-weight: 500;
}
.l1-public-goods-flow small {
  color: var(--muted);
  font: 400 9px/1.4 var(--mono);
  letter-spacing: .04em;
  text-transform: uppercase;
}
.l1-public-goods-flow > i { display: none; }

/* ==========================================================
   Ecosystem page
   ========================================================== */
.ecosystem-page-body { background: #f7f9fb; }
.ecosystem-page-body .site-header { grid-template-columns: 1fr auto 1fr; }

.eco-hero {
  min-height: calc(100svh - var(--header-h));
  display: grid;
  grid-template-columns: minmax(0,.92fr) minmax(560px,1.08fr);
  gap: clamp(46px,6vw,110px);
  align-items: center;
  padding-top: clamp(56px,6vw,100px);
  padding-bottom: clamp(70px,7vw,120px);
  background:
    radial-gradient(circle at 72% 28%, rgba(var(--blue-rgb),.06), transparent 33%),
    #fff;
}
.eco-hero-copy { min-width: 0; }
.eco-hero-title {
  max-width: 12ch;
  margin: clamp(62px,7vw,105px) 0 0;
  font-family: var(--display);
  font-size: clamp(76px,7.2vw,132px);
  line-height: .9;
  letter-spacing: -.052em;
  font-weight: 400;
}
.eco-hero-title em { color: var(--blue); font-weight: 400; }
.eco-hero-lead {
  max-width: 660px;
  margin: clamp(36px,3vw,52px) 0 0;
  color: #4f5d6e;
  font-size: clamp(18px,1.35vw,23px);
  line-height: 1.58;
  letter-spacing: -.015em;
}
.eco-hero-actions { display: flex; align-items: center; gap: 30px; margin-top: 42px; }
.eco-hero-metrics {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  margin-top: 66px;
  border-top: 1px solid var(--line-strong);
  border-left: 1px solid var(--line);
}
.eco-hero-metrics > div {
  min-height: 104px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 12px;
  padding: 20px 22px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.eco-hero-metrics span { color: var(--muted); font: 500 8px/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.eco-hero-metrics strong { font-family: var(--display); font-size: clamp(20px,1.55vw,28px); line-height: 1.1; letter-spacing: -.025em; font-weight: 500; }
.eco-hero-metrics strong small { display: block; margin-top: 5px; color: var(--muted); font: 500 8px/1.3 var(--mono); letter-spacing: .02em; }

.eco-orbit-shell {
  position: relative;
  min-height: 720px;
  overflow: hidden;
  border: 1px solid var(--line-strong);
  background:
    radial-gradient(circle at 50% 50%, rgba(var(--blue-rgb),.055), transparent 47%),
    linear-gradient(180deg,#fff,#f8fbff);
  box-shadow: 0 35px 100px rgba(7,17,29,.08);
}
.eco-orbit-shell::before,
.eco-orbit-shell::after {
  content: "";
  position: absolute;
  z-index: 4;
  width: 22px;
  height: 22px;
  pointer-events: none;
}
.eco-orbit-shell::before { left: -1px; top: -1px; border-left: 3px solid var(--blue); border-top: 3px solid var(--blue); }
.eco-orbit-shell::after { right: -1px; bottom: -1px; border-right: 3px solid var(--blue); border-bottom: 3px solid var(--blue); }
.eco-orbit-grid {
  position: absolute;
  inset: 0;
  opacity: .5;
  background-image:
    linear-gradient(rgba(var(--blue-rgb),.055) 1px, transparent 1px),
    linear-gradient(90deg,rgba(var(--blue-rgb),.055) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: radial-gradient(circle at center,#000,transparent 82%);
}
.eco-orbit-lines {
  position: absolute;
  left: 50%; top: 50%;
  width: min(94%,720px);
  height: min(94%,720px);
  transform: translate(-50%,-50%);
  fill: none;
  stroke: rgba(var(--blue-rgb),.15);
  stroke-width: 1;
  stroke-dasharray: 4 8;
  animation: ecoOrbitDash 18s linear infinite;
}
@keyframes ecoOrbitDash { to { stroke-dashoffset: -180; } }
.eco-orbit-core {
  position: absolute;
  left: 50%; top: 50%;
  z-index: 3;
  width: clamp(170px,17vw,230px);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  transform: translate(-50%,-50%);
  border: 1px solid rgba(7,17,29,.17);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 30px 75px rgba(7,17,29,.12), inset 0 0 0 12px #f8fafc;
}
.eco-orbit-core img { width: 64%; height: 64%; object-fit: contain; }
.eco-orbit-core span { position: absolute; bottom: -42px; color: var(--muted); font: 500 8px/1 var(--mono); letter-spacing: .11em; white-space: nowrap; }
.eco-orbit-node {
  position: absolute;
  z-index: 5;
  width: 112px;
  min-height: 78px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 7px;
  padding: 14px;
  border: 1px solid rgba(7,17,29,.15);
  background: rgba(255,255,255,.92);
  box-shadow: 0 14px 38px rgba(7,17,29,.06);
  transform: translate(-50%,-50%);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease, color .25s ease;
}
.eco-orbit-node::before {
  content: "";
  position: absolute;
  left: 12px;
  top: 12px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--blue);
  box-shadow: 0 0 0 5px rgba(var(--blue-rgb),.08);
}
.eco-orbit-node b { margin-top: 14px; font-family: var(--display); font-size: 15px; letter-spacing: -.02em; }
.eco-orbit-node span { color: var(--muted); font: 500 7px/1 var(--mono); letter-spacing: .09em; }
.eco-orbit-node:hover,
.eco-orbit-node:focus-visible { color: var(--blue); border-color: rgba(var(--blue-rgb),.45); box-shadow: 0 22px 52px rgba(var(--blue-rgb),.13); transform: translate(-50%,-50%) translateY(-5px); outline: none; }
.eco-node-1 { left: 50%; top: 10%; }
.eco-node-2 { left: 84%; top: 30%; }
.eco-node-3 { left: 84%; top: 70%; }
.eco-node-4 { left: 50%; top: 90%; }
.eco-node-5 { left: 16%; top: 70%; }
.eco-node-6 { left: 16%; top: 30%; }
.eco-orbit-caption {
  position: absolute;
  left: 28px;
  right: 28px;
  bottom: 26px;
  z-index: 4;
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 22px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}
.eco-orbit-caption span { color: var(--blue); font: 500 8px/1 var(--mono); letter-spacing: .1em; }
.eco-orbit-caption p { margin: 0; color: var(--muted); font-size: 11px; }

.eco-applications,
.eco-tokenization,
.eco-network-tools { background: #fff; }
.eco-section-intro,
.eco-tokenization-intro,
.eco-participate-heading {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(320px,.85fr);
  gap: clamp(56px,8vw,135px);
  align-items: end;
  padding: clamp(72px,8vw,132px) 0 clamp(60px,7vw,112px);
}
.eco-section-intro-copy { display: flex; flex-direction: column; align-items: flex-start; gap: 32px; }
.eco-section-intro p,
.eco-tokenization-intro > p,
.eco-tools-intro > p,
.eco-participate-heading > p { max-width: 620px; margin: 0; color: var(--muted); font-size: 18px; line-height: 1.65; }
.eco-filter-bar { display: flex; flex-wrap: wrap; gap: 8px; }
.eco-filter-bar button {
  min-height: 38px;
  padding: 0 14px;
  border: 1px solid var(--line);
  background: #fff;
  color: #344153;
  cursor: pointer;
  font: 500 8px/1 var(--mono);
  letter-spacing: .08em;
  text-transform: uppercase;
  transition: color .2s ease, background .2s ease, border-color .2s ease;
}
.eco-filter-bar button:hover,
.eco-filter-bar button.is-active { color: #fff; background: var(--ink); border-color: var(--ink); }

.eco-app-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  border-top: 1px solid var(--line-strong);
  border-left: 1px solid var(--line-strong);
}
.eco-app-card {
  min-width: 0;
  min-height: 670px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-right: 1px solid var(--line-strong);
  border-bottom: 1px solid var(--line-strong);
  background: #fff;
  transition: opacity .25s ease, transform .35s ease, box-shadow .35s ease;
}
.eco-app-card[hidden] { display: none; }
.eco-app-card:hover { z-index: 2; transform: translateY(-7px); box-shadow: 0 32px 80px rgba(7,17,29,.11); }
.eco-app-featured { background: #fbfdff; box-shadow: inset 0 3px 0 var(--blue); }
.eco-card-top {
  min-height: 54px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 0 22px;
  border-bottom: 1px solid var(--line);
  color: var(--muted);
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
}
.eco-card-top span:last-child { color: var(--blue); }
.eco-card-visual { position: relative; flex: 1; min-height: 365px; overflow: hidden; border-bottom: 1px solid var(--line); }
.eco-card-copy { min-height: 250px; display: grid; grid-template-columns: minmax(0,1fr) minmax(220px,.78fr); gap: 28px; align-items: end; padding: 30px; }
.eco-card-copy > div { min-width: 0; }
.eco-card-tag { color: var(--blue); font: 500 8px/1 var(--mono); letter-spacing: .1em; }
.eco-card-copy h3 { margin: 20px 0 0; font-family: var(--display); font-size: clamp(32px,3vw,52px); line-height: .98; letter-spacing: -.04em; font-weight: 400; }
.eco-card-copy p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.65; }
.eco-card-link { grid-column: 1 / -1; color: var(--ink); font: 600 11px/1 var(--sans); }
.eco-app-card:hover .eco-card-link { color: var(--blue); }

.eco-molecule-visual {
  background:
    radial-gradient(circle at 50% 50%, rgba(var(--blue-rgb),.08), transparent 43%),
    linear-gradient(180deg,#fff,#f7faff);
}
.eco-molecule-rings { position: absolute; left: 50%; top: 48%; width: 320px; aspect-ratio: 1; transform: translate(-50%,-50%); }
.eco-molecule-rings i { position: absolute; inset: calc(var(--i,0) * 38px); border: 1px solid rgba(var(--blue-rgb),.13); border-radius: 50%; }
.eco-molecule-rings i:nth-child(1) { --i:0; animation: slowRotate 28s linear infinite; }
.eco-molecule-rings i:nth-child(2) { --i:1; border-style: dashed; animation: slowRotate 20s linear reverse infinite; }
.eco-molecule-rings i:nth-child(3) { --i:2; }
.eco-molecule-visual .atom { position: absolute; z-index: 2; width: 46px; height: 46px; border-radius: 50%; background: radial-gradient(circle at 32% 27%,#fff 0 8%,var(--cyan) 22%,#2c65d7 70%,#142c72); box-shadow: 0 14px 26px rgba(var(--blue-rgb),.22); }
.eco-molecule-visual .a1 { left: 22%; top: 49%; }
.eco-molecule-visual .a2 { left: 38%; top: 31%; width: 34px; height: 34px; }
.eco-molecule-visual .a3 { left: 52%; top: 48%; width: 64px; height: 64px; }
.eco-molecule-visual .a4 { left: 69%; top: 28%; width: 30px; height: 30px; }
.eco-molecule-visual .a5 { left: 76%; top: 64%; width: 52px; height: 52px; }
.eco-molecule-visual .a6 { left: 42%; top: 70%; width: 38px; height: 38px; }
.eco-molecule-visual .m-bond { position: absolute; z-index: 1; height: 6px; transform-origin: left center; border-radius: 10px; background: linear-gradient(180deg,#e7edf4,#9ca9b7); }
.mb1{left:25%;top:49%;width:19%;transform:rotate(-37deg)}.mb2{left:41%;top:34%;width:18%;transform:rotate(28deg)}.mb3{left:56%;top:47%;width:20%;transform:rotate(-39deg)}.mb4{left:56%;top:53%;width:25%;transform:rotate(29deg)}.mb5{left:45%;top:72%;width:32%;transform:rotate(-7deg)}
.eco-molecule-visual > b,
.eco-forest-visual > b,
.eco-chess-visual > b { position: absolute; left: 24px; bottom: 22px; color: #445164; font: 500 8px/1 var(--mono); letter-spacing: .1em; }

.eco-corpus-visual { display: flex; flex-direction: column; justify-content: center; padding: 42px; background: #0d1724; color: #fff; }
.corpus-index { display: flex; gap: 8px; }
.corpus-index span { padding: 8px 10px; border: 1px solid rgba(255,255,255,.15); color: var(--acid); font: 500 8px/1 var(--mono); }
.corpus-lines { display: grid; grid-template-columns: repeat(8,1fr); gap: 7px; height: 90px; align-items: end; margin: 38px 0; }
.corpus-lines i { height: calc(28% + var(--n,1) * 7%); background: linear-gradient(to top,var(--blue),var(--cyan)); opacity: .8; }
.corpus-lines i:nth-child(1){--n:1}.corpus-lines i:nth-child(2){--n:5}.corpus-lines i:nth-child(3){--n:3}.corpus-lines i:nth-child(4){--n:7}.corpus-lines i:nth-child(5){--n:4}.corpus-lines i:nth-child(6){--n:8}.corpus-lines i:nth-child(7){--n:6}.corpus-lines i:nth-child(8){--n:9}
.eco-corpus-visual strong { font-family: var(--display); font-size: clamp(64px,7vw,118px); line-height: .82; letter-spacing: -.065em; font-weight: 300; }
.eco-corpus-visual small { margin-top: 18px; color: rgba(255,255,255,.5); font: 500 8px/1 var(--mono); letter-spacing: .12em; }

.eco-forest-visual { background: radial-gradient(circle at 50% 55%,rgba(var(--blue-rgb),.08),transparent 47%),linear-gradient(180deg,#fff,#f8fbff); }
.eco-forest-visual::before { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(var(--blue-rgb),.06) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--blue-rgb),.06) 1px,transparent 1px); background-size:48px 48px; mask-image:radial-gradient(circle at center,#000,transparent 80%); }
.eco-forest-visual svg { position: absolute; inset: 4% 2% 8%; width: 96%; height: 88%; fill: none; }

.eco-dataset-visual { display: grid; place-items: center; padding: 34px; background: linear-gradient(145deg,#f7faff,#fff); }
.dataset-sheet { width: min(94%,560px); display: grid; grid-template-columns: 60px 1fr 75px 90px; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); box-shadow: 0 24px 60px rgba(7,17,29,.07); }
.dataset-sheet > * { min-height: 52px; display: flex; align-items: center; padding: 10px 12px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(255,255,255,.94); }
.dataset-sheet span { color: var(--muted); font: 500 7px/1 var(--mono); letter-spacing: .08em; }
.dataset-sheet b { font: 500 11px/1 var(--mono); }
.dataset-sheet i { color: var(--blue); font: 400 9px/1 var(--mono); font-style: normal; }
.dataset-seal { position: absolute; right: 8%; bottom: 12%; padding: 10px 14px; border: 1px solid rgba(var(--blue-rgb),.35); color: var(--blue); background: #fff; font: 500 8px/1 var(--mono); letter-spacing: .1em; transform: rotate(-5deg); }

.eco-cipher-visual { background: #0c1623; color: #fff; }
.cipher-stream { position: absolute; inset: 30px; display: flex; flex-direction: column; gap: 16px; color: rgba(255,255,255,.32); font: 400 10px/1 var(--mono); }
.eco-lock { position: absolute; left: 50%; top: 51%; width: 142px; height: 112px; display: grid; place-items: center; transform: translate(-50%,-50%); border: 1px solid rgba(var(--acid-rgb),.6); background: rgba(var(--blue-rgb),.05); box-shadow: 0 20px 50px rgba(0,0,0,.2); }
.eco-lock::before { content:""; position:absolute; left:30px; right:30px; bottom:100%; height:64px; border:1px solid rgba(var(--acid-rgb),.6); border-bottom:0; border-radius:60px 60px 0 0; }
.eco-lock i { width: 14px; height: 34px; background: var(--acid); clip-path: polygon(50% 0,100% 42%,72% 42%,72% 100%,28% 100%,28% 42%,0 42%); }
.eco-lock b { position: absolute; bottom: -44px; color: rgba(255,255,255,.58); font: 500 8px/1 var(--mono); letter-spacing: .1em; }
.eco-cipher-visual::after { content:""; position:absolute; inset:0; background:linear-gradient(115deg,transparent 38%,rgba(var(--acid-rgb),.08),transparent 62%); transform:translateX(-100%); animation:cipherSweep 4.5s linear infinite; }

.eco-chess-visual { background: linear-gradient(145deg,#f7faff,#fff); }
.chess-board { position: absolute; left: 8%; top: 12%; width: 210px; aspect-ratio: 1; display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid var(--line-strong); transform: rotate(-5deg); box-shadow: 0 22px 50px rgba(7,17,29,.09); }
.chess-board i { border: 1px solid rgba(7,17,29,.04); background: #fff; }
.chess-board i:nth-child(2n),.chess-board i:nth-child(5),.chess-board i:nth-child(7),.chess-board i:nth-child(10),.chess-board i:nth-child(12),.chess-board i:nth-child(13),.chess-board i:nth-child(15){background:#dce9ff}
.eco-chess-visual svg { position: absolute; right: 6%; top: 17%; width: 52%; height: 48%; fill: none; stroke: var(--blue); stroke-width: 2; overflow: visible; }
.eco-chess-visual svg circle { fill: #fff; }

.eco-tokenization-intro { align-items: center; }
.artifact-lab { border: 1px solid var(--line-strong); background: #fbfcfe; box-shadow: 0 28px 80px rgba(7,17,29,.06); }
.artifact-tabs { display: grid; grid-template-columns: repeat(3,1fr); border-bottom: 1px solid var(--line-strong); }
.artifact-tabs button { min-height: 58px; border: 0; border-right: 1px solid var(--line); background: #fff; cursor: pointer; color: #465365; font: 500 9px/1 var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.artifact-tabs button:last-child { border-right: 0; }
.artifact-tabs button:hover,.artifact-tabs button.is-active { color: #fff; background: var(--ink); }
.artifact-stage { min-height: 510px; display: grid; grid-template-columns: minmax(0,1fr) 130px minmax(0,1fr); align-items: center; gap: 30px; padding: clamp(32px,4vw,68px); }
.artifact-object,.artifact-record { min-height: 370px; padding: 28px; border: 1px solid var(--line); background: #fff; }
.artifact-object { position: relative; display: flex; flex-direction: column; overflow: hidden; }
.artifact-object::before { content:""; position:absolute; inset:0; pointer-events:none; background-image:linear-gradient(rgba(var(--blue-rgb),.045) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--blue-rgb),.045) 1px,transparent 1px); background-size:40px 40px; }
.artifact-object-label { position: relative; z-index: 1; color: var(--blue); font: 500 8px/1 var(--mono); letter-spacing: .1em; }
.artifact-object-graphic { position: relative; z-index: 1; flex: 1; min-height: 190px; }
.artifact-object-graphic i { position: absolute; border-radius: 50%; background: radial-gradient(circle at 30% 28%,#fff 0 10%,var(--cyan) 25%,var(--blue) 70%,#15327c); box-shadow: 0 12px 24px rgba(var(--blue-rgb),.2); }
.artifact-object-graphic i:nth-child(1){width:42px;height:42px;left:15%;top:55%}.artifact-object-graphic i:nth-child(2){width:31px;height:31px;left:33%;top:32%}.artifact-object-graphic i:nth-child(3){width:58px;height:58px;left:48%;top:48%}.artifact-object-graphic i:nth-child(4){width:28px;height:28px;left:70%;top:29%}.artifact-object-graphic i:nth-child(5){width:46px;height:46px;left:76%;top:66%}.artifact-object-graphic i:nth-child(6){width:34px;height:34px;left:38%;top:72%}
.artifact-object strong { position: relative; z-index: 1; font-family:var(--display); font-size:28px; letter-spacing:-.03em; font-weight:500; }
.artifact-object p { position: relative; z-index: 1; margin:14px 0 0; color:var(--muted); font-size:12px; line-height:1.6; }
.artifact-arrow { display:grid; place-items:center; gap:18px; color:var(--blue); font:500 8px/1 var(--mono); letter-spacing:.1em; }
.artifact-arrow i { position: relative; width: 100%; height: 1px; background: rgba(var(--blue-rgb),.35); }
.artifact-arrow i::after { content:""; position:absolute; right:0; top:-4px; width:8px; height:8px; border-top:1px solid var(--blue); border-right:1px solid var(--blue); transform:rotate(45deg); }
.artifact-record { padding: 0; }
.artifact-record-head { min-height:56px; display:flex; align-items:center; justify-content:space-between; padding:0 20px; border-bottom:1px solid var(--line); color:var(--muted); font:500 8px/1 var(--mono); letter-spacing:.08em; }
.artifact-record-head b { color:var(--blue); }
.artifact-record dl { margin:0; }
.artifact-record dl > div { min-height:61px; display:grid; grid-template-columns:130px 1fr; align-items:center; padding:0 20px; border-bottom:1px solid var(--line); }
.artifact-record dl > div:last-child { border-bottom:0; }
.artifact-record dt { color:var(--muted); font:500 8px/1 var(--mono); letter-spacing:.08em; }
.artifact-record dd { margin:0; color:#1d2a3a; font:500 11px/1.35 var(--mono); }
.artifact-flow { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line-strong); }
.artifact-flow > div { min-height:128px; display:flex; flex-direction:column; justify-content:center; gap:8px; padding:22px 24px; border-right:1px solid var(--line); }
.artifact-flow > div:last-child { border-right:0; }
.artifact-flow span { color:var(--blue); font:500 9px/1 var(--mono); }
.artifact-flow b { font-family:var(--display); font-size:20px; font-weight:500; }
.artifact-flow small { color:var(--muted); font-size:11px; }
.artifact-flow > i { display:none; }

.eco-tools-intro { align-items: center; }
.eco-tool-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-top:1px solid var(--line-strong); border-left:1px solid var(--line-strong); }
.eco-tool-card { min-height:440px; display:flex; flex-direction:column; padding:28px; border-right:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong); background:#fff; transition:transform .3s ease,box-shadow .3s ease; }
.eco-tool-card:hover { z-index:2; transform:translateY(-6px); box-shadow:0 26px 70px rgba(7,17,29,.1); }
.eco-tool-card > span { color:var(--blue); font:500 8px/1 var(--mono); letter-spacing:.1em; }
.eco-tool-card h3 { margin:auto 0 14px; font-family:var(--display); font-size:clamp(32px,3vw,48px); line-height:1; letter-spacing:-.04em; font-weight:400; }
.eco-tool-card p { max-width:520px; margin:0; color:var(--muted); font-size:13px; line-height:1.65; }
.eco-tool-card > b { margin-top:25px; font-size:12px; }
.tool-chart { height:150px; display:flex; align-items:flex-end; gap:10px; margin:48px 0 22px; padding:0 16px 16px; border-bottom:1px solid var(--line-strong); background-image:linear-gradient(rgba(var(--blue-rgb),.07) 1px,transparent 1px); background-size:100% 36px; }
.tool-chart i { flex:1; height:var(--h); background:linear-gradient(to top,var(--blue),var(--cyan)); }
.tool-gauge { position:relative; width:170px; aspect-ratio:1; margin:42px auto 12px; display:grid; place-items:center; border:1px solid rgba(var(--blue-rgb),.16); border-radius:50%; }
.tool-gauge::before,.tool-gauge::after { content:""; position:absolute; border:1px dashed rgba(var(--blue-rgb),.24); border-radius:50%; }
.tool-gauge::before{inset:18px}.tool-gauge::after{inset:38px}
.tool-gauge i { position:absolute; inset:-6px; border:2px solid transparent; border-top-color:var(--blue); border-right-color:var(--cyan); border-radius:50%; transform-origin:50% 50%; animation:toolGaugeRotate 9s linear infinite; }
@keyframes toolGaugeRotate { to { transform:rotate(360deg); } }
.tool-gauge strong { font-family:var(--display); font-size:44px; font-weight:400; }
.tool-nodes { position:relative; height:170px; margin:40px 0 14px; }
.tool-nodes::before,.tool-nodes::after { content:""; position:absolute; left:12%; right:12%; top:50%; height:1px; background:rgba(var(--blue-rgb),.23); transform:rotate(15deg); }
.tool-nodes::after { transform:rotate(-19deg); }
.tool-nodes i { position:absolute; width:16px; height:16px; border:3px solid #fff; border-radius:50%; background:var(--blue); box-shadow:0 0 0 1px rgba(var(--blue-rgb),.28),0 8px 20px rgba(var(--blue-rgb),.2); }
.tool-nodes i:nth-child(1){left:10%;top:42%}.tool-nodes i:nth-child(2){left:28%;top:18%}.tool-nodes i:nth-child(3){left:46%;top:55%}.tool-nodes i:nth-child(4){left:63%;top:26%}.tool-nodes i:nth-child(5){left:79%;top:58%}.tool-nodes i:nth-child(6){left:89%;top:28%}
.tool-radar { position:relative; width:170px; aspect-ratio:1; margin:40px auto 14px; border:1px solid rgba(var(--blue-rgb),.18); border-radius:50%; background:repeating-radial-gradient(circle,transparent 0 27px,rgba(var(--blue-rgb),.12) 28px 29px); }
.tool-radar::before,.tool-radar::after{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:rgba(var(--blue-rgb),.12)}.tool-radar::after{left:0;right:0;top:50%;width:auto;height:1px}
.tool-radar i { position:absolute; width:8px; height:8px; border-radius:50%; background:var(--blue); box-shadow:0 0 15px rgba(var(--blue-rgb),.55); }
.tool-radar i:nth-child(1){left:29%;top:35%}.tool-radar i:nth-child(2){left:62%;top:21%}.tool-radar i:nth-child(3){left:70%;top:67%}
.tool-radar span { position:absolute; left:50%; top:50%; width:50%; height:1px; transform-origin:left center; background:linear-gradient(90deg,var(--blue),transparent); animation:radarSweep 5s linear infinite; }
@keyframes radarSweep { to { transform:rotate(360deg); } }

.eco-participate { background:#101a27; color:#fff; }
.eco-participate-inner { background:transparent; border-color:rgba(255,255,255,.12); }
.eco-participate .section-kicker-light { border-color:rgba(255,255,255,.22); color:rgba(255,255,255,.5); }
.eco-participate .section-kicker-light span:first-child { color:#fff; }
.eco-participate .section-title em { color:var(--acid); }
.eco-participate-heading > p { color:rgba(255,255,255,.58); }
.participate-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid rgba(255,255,255,.2); border-left:1px solid rgba(255,255,255,.16); }
.participate-card { min-height:380px; display:flex; flex-direction:column; padding:28px; border-right:1px solid rgba(255,255,255,.16); border-bottom:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.025); transition:background .25s ease,transform .25s ease; }
.participate-card:hover { z-index:2; transform:translateY(-5px); background:rgba(var(--blue-rgb),.11); }
.participate-card > span { color:var(--acid); font:500 8px/1 var(--mono); letter-spacing:.1em; }
.participate-card h3 { margin:auto 0 18px; font-family:var(--display); font-size:34px; line-height:1; letter-spacing:-.035em; font-weight:400; }
.participate-card p { margin:0; color:rgba(255,255,255,.55); font-size:12px; line-height:1.65; }
.participate-card b { margin-top:28px; font-size:12px; }
.participate-disclaimer { display:grid; grid-template-columns:auto 1fr; gap:32px; align-items:center; margin-top:42px; padding:26px 0 0; border-top:1px solid rgba(255,255,255,.18); }
.participate-disclaimer span { color:var(--acid); font:500 8px/1 var(--mono); letter-spacing:.1em; }
.participate-disclaimer p { max-width:920px; margin:0; color:rgba(255,255,255,.48); font-size:11px; line-height:1.6; }
.eco-final-cta { min-height:820px; }

@media (max-width: 1380px) {
  .l1-asset-stage { grid-template-columns:minmax(182px,210px) minmax(500px,1fr) minmax(182px,210px); gap:26px; }
  .l1-label-gas,.l1-label-govern,.l1-label-pool { left:3%; }
  .l1-label-stake,.l1-label-exchange,.l1-label-science { right:3%; }
  .eco-hero { grid-template-columns:minmax(0,.9fr) minmax(500px,1.1fr); gap:50px; }
  .eco-orbit-shell { min-height:650px; }
  .eco-orbit-node { width:104px; }
  .participate-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 1120px) {
  .l1-asset-stage { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .l1-coin-diagram { overflow:visible; }
  .l1-label-gas { left:6%; }.l1-label-govern { left:5%; }.l1-label-pool { left:5%; }
  .l1-label-stake { right:6%; }.l1-label-exchange { right:5%; }.l1-label-science { right:5%; }
  .l1-public-goods { grid-template-columns:1fr; }
  .l1-public-goods-metric { min-height:280px; border-right:0; border-bottom:1px solid var(--line); }
  .l1-public-goods-flow { grid-template-columns:repeat(2,1fr); }
  .l1-public-goods-flow > div:nth-of-type(2) { border-right:0; }
  .l1-public-goods-flow > div:nth-of-type(-n+2) { border-bottom:1px solid var(--line); }

  .eco-hero { grid-template-columns:1fr; }
  .eco-hero-title { max-width:10ch; }
  .eco-orbit-shell { min-height:700px; }
  .eco-section-intro,.eco-tokenization-intro,.eco-participate-heading { grid-template-columns:1fr; align-items:start; }
  .eco-section-intro-copy { max-width:760px; }
  .eco-app-card { min-height:620px; }
  .eco-card-copy { grid-template-columns:1fr; min-height:270px; }
  .artifact-stage { grid-template-columns:1fr; }
  .artifact-arrow { min-height:70px; }
  .artifact-arrow i { width:1px; height:48px; }
  .artifact-arrow i::after { right:-4px; top:auto; bottom:0; transform:rotate(135deg); }
  .artifact-flow { grid-template-columns:repeat(2,1fr); }
  .artifact-flow > div:nth-of-type(2) { border-right:0; }
  .artifact-flow > div:nth-of-type(-n+2) { border-bottom:1px solid var(--line); }
}

@media (max-width: 760px) {
  .viewer-tokenization-note { grid-template-columns:1fr auto; }
  .viewer-tokenization-note > span { grid-column:1 / -1; }
  .viewer-tokenization-note p { font-size:10px; }
  .ecosystem-heading-copy { gap:22px; }

  .l1-coin-diagram { overflow:hidden; }
  .l1-label-gas { left:3%; }.l1-label-govern { left:2%; }.l1-label-pool { left:2%; }
  .l1-label-stake { right:3%; }.l1-label-exchange { right:2%; }.l1-label-science { right:2%; }
  .l1-public-goods { margin-top:20px; border-radius:7px; }
  .l1-public-goods-metric { min-height:265px; padding:34px 28px; }
  .l1-public-goods-metric strong { font-size:92px; }
  .l1-public-goods-copy { min-height:0; padding:34px 26px; }
  .l1-public-goods-copy h3 { font-size:40px; }
  .l1-public-goods-flow { grid-template-columns:1fr; }
  .l1-public-goods-flow > div { min-height:104px; border-right:0; border-bottom:1px solid var(--line); }
  .l1-public-goods-flow > div:last-of-type { border-bottom:0; }

  .eco-hero { min-height:0; padding-top:62px; padding-bottom:78px; }
  .eco-hero-title { margin-top:52px; font-size:clamp(60px,16vw,82px); }
  .eco-hero-lead { font-size:17px; }
  .eco-hero-actions { flex-direction:column; align-items:flex-start; gap:22px; }
  .eco-hero-metrics { grid-template-columns:1fr; }
  .eco-hero-metrics > div { min-height:88px; }
  .eco-orbit-shell { min-height:560px; }
  .eco-orbit-lines { width:680px; height:680px; }
  .eco-orbit-core { width:145px; }
  .eco-orbit-core span { bottom:-34px; font-size:6px; }
  .eco-orbit-node { width:90px; min-height:66px; padding:10px; }
  .eco-orbit-node b { font-size:12px; }
  .eco-orbit-node span { font-size:6px; }
  .eco-node-1 { top:12%; }.eco-node-4 { top:88%; }
  .eco-node-2,.eco-node-3 { left:82%; }.eco-node-5,.eco-node-6 { left:18%; }
  .eco-orbit-caption { left:16px; right:16px; bottom:16px; grid-template-columns:1fr; gap:8px; }

  .eco-section-intro,.eco-tokenization-intro,.eco-participate-heading { padding:65px 0 74px; gap:34px; }
  .eco-section-intro p,.eco-tokenization-intro > p,.eco-tools-intro > p,.eco-participate-heading > p { font-size:15px; }
  .eco-filter-bar { width:100%; }
  .eco-filter-bar button { flex:1 1 calc(50% - 8px); }
  .eco-app-grid,.eco-tool-grid { grid-template-columns:1fr; }
  .eco-app-card { min-height:600px; }
  .eco-card-visual { min-height:330px; }
  .eco-card-copy { padding:24px; }
  .eco-card-copy h3 { font-size:38px; }
  .eco-corpus-visual strong { font-size:68px; }
  .eco-corpus-visual { padding:28px; }
  .dataset-sheet { grid-template-columns:44px 1fr 58px 70px; }
  .dataset-sheet > * { padding:8px 7px; font-size:7px; }
  .artifact-tabs { grid-template-columns:1fr; }
  .artifact-tabs button { border-right:0; border-bottom:1px solid var(--line); }
  .artifact-tabs button:last-child { border-bottom:0; }
  .artifact-stage { padding:20px; }
  .artifact-object,.artifact-record { min-height:350px; }
  .artifact-record dl > div { grid-template-columns:98px 1fr; padding:0 14px; }
  .artifact-flow { grid-template-columns:1fr; }
  .artifact-flow > div { border-right:0; border-bottom:1px solid var(--line); }
  .artifact-flow > div:last-child { border-bottom:0; }
  .eco-tool-card { min-height:410px; padding:24px; }
  .participate-grid { grid-template-columns:1fr; }
  .participate-card { min-height:330px; }
  .participate-disclaimer { grid-template-columns:1fr; gap:14px; }
}

@media (max-width: 430px) {
  .eco-orbit-shell { min-height:500px; }
  .eco-orbit-node { width:78px; min-height:60px; }
  .eco-orbit-node::before { width:5px; height:5px; left:8px; top:8px; }
  .eco-node-2,.eco-node-3 { left:84%; }.eco-node-5,.eco-node-6 { left:16%; }
  .eco-orbit-caption p { display:none; }
  .eco-molecule-visual .atom { transform:scale(.82); }
  .chess-board { width:170px; }
  .eco-card-copy h3 { font-size:34px; }
}

@media (prefers-reduced-motion: reduce) {
  .forest-branch,.forest-nodes circle,.eco-orbit-lines,.tool-gauge i,.tool-radar span { animation:none; }
}

/* Artifact-mode visual states driven by the ecosystem laboratory tabs. */
.artifact-lab[data-artifact-view="model"] .artifact-object-graphic i {
  border-radius: 5px;
  background: linear-gradient(145deg,#fff,var(--acid));
  border: 1px solid rgba(var(--blue-rgb),.35);
  box-shadow: 0 12px 24px rgba(var(--blue-rgb),.12);
}
.artifact-lab[data-artifact-view="model"] .artifact-object-graphic::before,
.artifact-lab[data-artifact-view="model"] .artifact-object-graphic::after {
  content: "";
  position: absolute;
  left: 16%; right: 14%;
  top: 49%;
  height: 1px;
  background: rgba(var(--blue-rgb),.35);
  transform: rotate(16deg);
}
.artifact-lab[data-artifact-view="model"] .artifact-object-graphic::after { transform: rotate(-19deg); }
.artifact-lab[data-artifact-view="ip"] .artifact-object-graphic::before {
  content: "";
  position: absolute;
  left: 50%; top: 48%;
  width: 128px; height: 94px;
  transform: translate(-50%,-50%);
  border: 1px solid rgba(var(--blue-rgb),.45);
  background: rgba(var(--blue-rgb),.035);
}
.artifact-lab[data-artifact-view="ip"] .artifact-object-graphic::after {
  content: "";
  position: absolute;
  left: calc(50% - 38px); top: calc(48% - 72px);
  width: 76px; height: 66px;
  border: 1px solid rgba(var(--blue-rgb),.45);
  border-bottom: 0;
  border-radius: 52px 52px 0 0;
}
.artifact-lab[data-artifact-view="ip"] .artifact-object-graphic i {
  width: 6px !important;
  height: 6px !important;
  background: var(--blue);
  box-shadow: 0 0 18px rgba(var(--blue-rgb),.35);
}

/* v8.1 mobile native-asset layout — keep every metric and label inside its own bounds. */
@media (max-width: 760px) {
  .l1-asset-stage {
    grid-template-columns: 1fr;
    gap: 14px;
    align-items: stretch;
  }
  .l1-coin-diagram {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
    overflow: hidden;
  }
  .l1-asset-stage > .l1-side-metric:first-child {
    grid-column: 1;
    grid-row: 2;
  }
  .l1-asset-stage > .l1-side-metric:last-child {
    grid-column: 1;
    grid-row: 3;
  }
  .l1-side-metric {
    min-height: 0;
    display: grid;
    grid-template-columns: 44px minmax(100px, .72fr) minmax(0, 1fr);
    grid-template-rows: auto auto;
    grid-template-areas:
      "icon value copy"
      "icon label copy";
    align-items: center;
    column-gap: 16px;
    row-gap: 6px;
    padding: 22px 20px;
  }
  .l1-side-metric-icon {
    grid-area: icon;
    width: 42px;
    height: 42px;
    align-self: start;
  }
  .l1-side-metric strong {
    grid-area: value;
    margin: 0;
    font-size: clamp(45px, 13vw, 56px);
    line-height: .92;
  }
  .l1-side-metric > span {
    grid-area: label;
    margin: 0;
    align-self: start;
    font-size: 8px;
    line-height: 1.45;
  }
  .l1-side-metric .l1-metric-divider { display: none; }
  .l1-side-metric p {
    grid-area: copy;
    align-self: stretch;
    display: flex;
    align-items: center;
    min-width: 0;
    padding-left: 16px;
    border-left: 1px solid rgba(7,17,29,.13);
    font-size: 11px;
    line-height: 1.55;
    overflow-wrap: anywhere;
  }
}

@media (max-width: 430px) {
  .l1-side-metric {
    grid-template-columns: 40px minmax(94px, .7fr) minmax(0, 1fr);
    column-gap: 12px;
    padding: 20px 16px;
  }
  .l1-side-metric-icon { width: 38px; height: 38px; }
  .l1-side-metric strong { font-size: 47px; }
  .l1-side-metric p { padding-left: 12px; font-size: 10px; }
}

/* ========================================================================
   v9 — Verifiable AI, model assets and post-quantum scientific IP
   ======================================================================== */

.verifiable-ai {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 74% 19%, rgba(var(--blue-rgb), .06), transparent 27%),
    linear-gradient(180deg, #fff 0%, #fbfcfe 100%);
}
.verifiable-ai::before {
  content: "AI";
  position: absolute;
  right: -1.2vw;
  top: 5.8vw;
  color: transparent;
  -webkit-text-stroke: 1px rgba(7, 17, 29, .035);
  font-family: var(--display);
  font-size: clamp(250px, 28vw, 520px);
  font-weight: 300;
  line-height: .72;
  letter-spacing: -.07em;
  pointer-events: none;
}
.ai-intro {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.14fr) minmax(360px, .86fr);
  gap: clamp(56px, 8vw, 138px);
  align-items: end;
  padding: clamp(72px, 9vw, 145px) 0 clamp(72px, 8vw, 126px);
}
.ai-intro-title .section-title {
  max-width: 980px;
  font-size: clamp(58px, 5.55vw, 101px);
}
.ai-status-line {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 34px;
}
.ai-status-line span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, .78);
  color: var(--muted);
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
}
.ai-status-line span:first-child {
  color: var(--blue-deep);
  border-color: rgba(var(--blue-rgb), .25);
  background: rgba(var(--blue-rgb), .045);
}
.ai-status-line i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--blue);
  box-shadow: 0 0 0 4px rgba(var(--blue-rgb), .1);
}
.ai-intro-copy {
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 610px;
}
.ai-intro-copy p {
  margin: 0;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.72;
}
.ai-intro-copy .large-copy {
  color: var(--ink);
  font-family: var(--display);
  font-size: clamp(22px, 1.7vw, 30px);
  line-height: 1.37;
  letter-spacing: -.018em;
}

.ai-pipeline {
  position: relative;
  z-index: 2;
  border: 1px solid var(--line-strong);
  background: rgba(255, 255, 255, .9);
  box-shadow: 0 28px 80px rgba(7, 17, 29, .07);
}
.ai-pipeline-head {
  min-height: 58px;
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border-bottom: 1px solid var(--line);
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
  color: var(--muted);
}
.ai-pipeline-head span {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--ink);
}
.ai-pipeline-head i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--blue);
  box-shadow: 0 0 0 4px rgba(var(--blue-rgb), .1);
}
.ai-pipeline-head b {
  font-weight: 500;
  color: var(--blue-deep);
}
.ai-pipeline-track {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 34px minmax(0, 1fr) 34px minmax(0, 1fr) 34px minmax(0, 1fr) 34px minmax(0, 1fr);
  align-items: stretch;
}
.ai-pipeline-stage {
  position: relative;
  min-height: 304px;
  padding: 22px 20px 20px;
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--line);
  background: rgba(255, 255, 255, .7);
  cursor: pointer;
  outline: none;
  transition: background .25s ease, box-shadow .25s ease, transform .25s ease;
}
.ai-pipeline-stage:last-of-type { border-right: 0; }
.ai-pipeline-stage::before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  right: -1px;
  height: 3px;
  background: var(--blue);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .3s ease;
}
.ai-pipeline-stage:hover,
.ai-pipeline-stage:focus-visible,
.ai-pipeline-stage.is-active {
  z-index: 2;
  background: linear-gradient(180deg, rgba(var(--blue-rgb), .055), #fff 55%);
  box-shadow: 0 18px 42px rgba(7, 17, 29, .07);
}
.ai-pipeline-stage:hover::before,
.ai-pipeline-stage:focus-visible::before,
.ai-pipeline-stage.is-active::before { transform: scaleX(1); }
.ai-stage-index {
  color: var(--blue);
  font: 500 9px/1 var(--mono);
  letter-spacing: .12em;
}
.ai-pipeline-stage h3 {
  margin: auto 0 10px;
  font-family: var(--display);
  font-size: clamp(22px, 1.65vw, 30px);
  line-height: 1.04;
  letter-spacing: -.025em;
  font-weight: 500;
}
.ai-pipeline-stage p {
  min-height: 66px;
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}
.ai-pipeline-stage small {
  margin-top: 20px;
  color: #526174;
  font: 500 7px/1 var(--mono);
  letter-spacing: .1em;
}
.ai-pipeline-arrow {
  position: relative;
  display: block;
  align-self: center;
  width: 100%;
  height: 1px;
  background: var(--line-strong);
}
.ai-pipeline-arrow::after {
  content: "";
  position: absolute;
  right: 1px;
  top: 50%;
  width: 7px;
  height: 7px;
  border-top: 1px solid var(--blue);
  border-right: 1px solid var(--blue);
  transform: translateY(-50%) rotate(45deg);
}
.ai-stage-glyph {
  position: relative;
  width: 90px;
  height: 90px;
  margin: 42px 0 16px;
  color: var(--blue);
}
.ai-glyph-data i {
  position: absolute;
  width: 18px;
  height: 18px;
  border: 1px solid currentColor;
  border-radius: 50%;
  background: #fff;
}
.ai-glyph-data i:nth-child(1) { left: 4px; top: 35px; }
.ai-glyph-data i:nth-child(2) { left: 37px; top: 7px; }
.ai-glyph-data i:nth-child(3) { right: 4px; top: 35px; }
.ai-glyph-data i:nth-child(4) { left: 37px; bottom: 3px; }
.ai-glyph-data::before,
.ai-glyph-data::after {
  content: "";
  position: absolute;
  left: 18px;
  top: 42px;
  width: 55px;
  height: 1px;
  background: currentColor;
  opacity: .6;
  transform: rotate(-40deg);
}
.ai-glyph-data::after { transform: rotate(40deg); }
.ai-glyph-model {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  align-items: end;
  gap: 5px;
  padding: 10px 7px;
  border-left: 1px solid rgba(var(--blue-rgb), .25);
  border-bottom: 1px solid rgba(var(--blue-rgb), .25);
}
.ai-glyph-model i {
  display: block;
  height: var(--h, 50%);
  background: linear-gradient(180deg, var(--cyan), var(--blue-deep));
  border-radius: 2px 2px 0 0;
}
.ai-glyph-model i:nth-child(1) { --h: 34%; }
.ai-glyph-model i:nth-child(2) { --h: 68%; }
.ai-glyph-model i:nth-child(3) { --h: 48%; }
.ai-glyph-model i:nth-child(4) { --h: 86%; }
.ai-glyph-model i:nth-child(5) { --h: 72%; }
.ai-glyph-inference {
  border: 1px solid rgba(var(--blue-rgb), .25);
  background-image: radial-gradient(circle, rgba(var(--blue-rgb), .4) 1.3px, transparent 1.4px);
  background-size: 14px 14px;
}
.ai-glyph-inference span {
  position: absolute;
  left: 12px;
  right: 12px;
  height: 1px;
  background: var(--blue);
  transform-origin: left;
}
.ai-glyph-inference span:nth-child(1) { top: 24px; transform: rotate(12deg); }
.ai-glyph-inference span:nth-child(2) { top: 45px; transform: rotate(-18deg); }
.ai-glyph-inference span:nth-child(3) { top: 65px; transform: rotate(8deg); }
.ai-glyph-result {
  display: grid;
  place-items: center;
  border: 1px solid rgba(var(--blue-rgb), .28);
  border-radius: 50%;
}
.ai-glyph-result::before,
.ai-glyph-result::after {
  content: "";
  position: absolute;
  border: 1px solid rgba(var(--blue-rgb), .18);
  border-radius: 50%;
}
.ai-glyph-result::before { inset: -11px; }
.ai-glyph-result::after { inset: -22px; }
.ai-glyph-result b { font: 400 38px/1 var(--display); }
.ai-glyph-result i {
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--blue);
  right: -14px;
  top: 12px;
  box-shadow: 0 0 0 5px rgba(var(--blue-rgb), .08);
}
.ai-glyph-ip {
  display: grid;
  place-items: center;
  border: 1px solid rgba(var(--blue-rgb), .3);
  background: linear-gradient(145deg, rgba(var(--blue-rgb), .04), #fff);
}
.ai-glyph-ip i {
  position: absolute;
  width: 34px;
  height: 26px;
  top: 14px;
  border: 1px solid currentColor;
  border-bottom: 0;
  border-radius: 24px 24px 0 0;
}
.ai-glyph-ip span {
  margin-top: 19px;
  font: 500 17px/1 var(--mono);
  letter-spacing: .06em;
}
.ai-pipeline-detail {
  display: grid;
  grid-template-columns: minmax(220px, .34fr) minmax(0, 1fr);
  gap: 32px;
  min-height: 92px;
  padding: 22px 24px;
  border-top: 1px solid var(--line-strong);
  background: #f5f8fc;
  align-items: center;
}
.ai-pipeline-detail span {
  color: var(--blue-deep);
  font: 500 8px/1.45 var(--mono);
  letter-spacing: .1em;
}
.ai-pipeline-detail p {
  margin: 0;
  color: #465468;
  font-size: 14px;
  line-height: 1.6;
}

.ai-proof-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.36fr) minmax(370px, .64fr);
  margin-top: clamp(54px, 6vw, 96px);
  border: 1px solid var(--line-strong);
  background: #fff;
  box-shadow: 0 30px 90px rgba(7, 17, 29, .08);
}
.ai-runtime-card {
  min-width: 0;
  color: #fff;
  background:
    radial-gradient(circle at 70% 15%, rgba(var(--blue-rgb), .18), transparent 30%),
    var(--ink);
  border-right: 1px solid rgba(255,255,255,.12);
}
.ai-runtime-head {
  min-height: 60px;
  padding: 0 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border-bottom: 1px solid rgba(255,255,255,.14);
  color: rgba(255,255,255,.52);
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
}
.ai-runtime-head span {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #fff;
}
.ai-runtime-head i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--acid);
  box-shadow: 0 0 0 5px rgba(var(--acid-rgb), .11);
}
.ai-runtime-head b { color: var(--acid); font-weight: 500; }
.ai-runtime-visual {
  position: relative;
  min-height: 500px;
  overflow: hidden;
  border-bottom: 1px solid rgba(255,255,255,.14);
}
.ai-runtime-visual svg {
  width: 100%;
  height: 100%;
  min-height: 500px;
  display: block;
}
.ai-grid-lines path {
  fill: none;
  stroke: rgba(255,255,255,.055);
  stroke-width: 1;
}
.ai-tree path {
  fill: none;
  stroke: rgba(142,184,255,.64);
  stroke-width: 1.4;
  vector-effect: non-scaling-stroke;
}
.ai-tree circle {
  fill: #07111d;
  stroke: var(--acid);
  stroke-width: 1.4;
}
.ai-tree-one { opacity: .65; }
.ai-tree-two { opacity: 1; }
.ai-tree-three { opacity: .65; }
.ai-signal-path {
  fill: none;
  stroke: rgba(74,168,255,.28);
  stroke-width: 1.4;
  stroke-dasharray: 5 8;
}
.ai-signal-dot {
  fill: var(--acid);
  filter: drop-shadow(0 0 10px rgba(var(--acid-rgb), .8));
  offset-path: path("M58 170C170 85 264 95 360 132S546 210 662 170");
  animation: aiSignal 5.4s linear infinite;
}
@keyframes aiSignal { to { offset-distance: 100%; } }
.ai-runtime-equation {
  position: absolute;
  left: 24px;
  bottom: 20px;
  color: rgba(255,255,255,.46);
  font: 400 10px/1 var(--mono);
  letter-spacing: .04em;
}
.ai-runtime-console {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-bottom: 1px solid rgba(255,255,255,.14);
}
.ai-runtime-console > div {
  min-height: 88px;
  padding: 17px 18px;
  border-right: 1px solid rgba(255,255,255,.12);
  display: flex;
  flex-direction: column;
  gap: 11px;
}
.ai-runtime-console > div:last-child { border-right: 0; }
.ai-runtime-console span {
  color: rgba(255,255,255,.38);
  font: 500 7px/1 var(--mono);
  letter-spacing: .1em;
}
.ai-runtime-console strong {
  color: rgba(255,255,255,.86);
  font: 400 11px/1.4 var(--mono);
}
.ai-runtime-console .ai-runtime-state { color: var(--acid); }
.ai-runtime-card.is-running .ai-runtime-state { color: var(--cyan); }
.ai-runtime-card.is-verified .ai-runtime-state { color: #b9f7dc; }
.ai-replay-button {
  width: 100%;
  min-height: 66px;
  padding: 0 22px;
  border: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: transparent;
  color: #fff;
  font-weight: 650;
  cursor: pointer;
  transition: background .22s ease;
}
.ai-replay-button:hover,
.ai-replay-button:focus-visible { background: rgba(255,255,255,.06); outline: none; }
.ai-replay-button span {
  color: var(--acid);
  font: 400 22px/1 var(--mono);
  transition: transform .4s ease;
}
.ai-runtime-card.is-running .ai-replay-button span { animation: aiSpin .8s linear infinite; }
@keyframes aiSpin { to { transform: rotate(360deg); } }

.ai-capability-stack {
  display: grid;
  grid-template-rows: repeat(3, 1fr);
  min-width: 0;
}
.ai-capability-card {
  min-height: 0;
  padding: 28px 26px;
  border-bottom: 1px solid var(--line-strong);
  background: #fff;
  display: flex;
  flex-direction: column;
  transition: background .25s ease, padding-left .25s ease;
}
.ai-capability-card:last-child { border-bottom: 0; }
.ai-capability-card:hover { background: #f7f9fc; padding-left: 32px; }
.ai-capability-card > div {
  display: flex;
  justify-content: space-between;
  color: var(--blue);
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
}
.ai-capability-card > div b { font-weight: 500; }
.ai-capability-card h3 {
  margin: auto 0 13px;
  font-size: clamp(23px, 1.8vw, 32px);
  line-height: 1.06;
  letter-spacing: -.026em;
  font-weight: 500;
}
.ai-capability-card p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.58;
}
.ai-capability-card a {
  width: max-content;
  margin-top: 20px;
  padding-bottom: 2px;
  border-bottom: 1px solid currentColor;
  color: var(--blue-deep);
  font-size: 12px;
  font-weight: 700;
}
.ai-capability-agent {
  background: linear-gradient(145deg, rgba(var(--blue-rgb), .06), #fff 65%);
}
.ai-agent-line {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 19px;
  color: #526174;
  font: 500 8px/1.4 var(--mono);
  letter-spacing: .06em;
}
.ai-agent-line i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--blue);
}

.ai-institution-panel {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr);
  gap: clamp(45px, 7vw, 110px);
  align-items: center;
  margin-top: clamp(52px, 6vw, 92px);
  padding: clamp(38px, 5vw, 72px);
  border: 1px solid rgba(var(--blue-rgb), .2);
  background:
    linear-gradient(rgba(var(--blue-rgb), .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(var(--blue-rgb), .035) 1px, transparent 1px),
    #f7faff;
  background-size: 46px 46px;
}
.ai-institution-copy h3 {
  margin: 24px 0 26px;
  font-size: clamp(44px, 4vw, 72px);
  line-height: .98;
  letter-spacing: -.035em;
  font-weight: 400;
}
.ai-institution-copy h3 em { color: var(--blue); font-weight: 400; }
.ai-institution-copy p {
  max-width: 570px;
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.ai-verification-steps {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 48px minmax(0, 1fr) 48px minmax(0, 1fr);
  align-items: stretch;
}
.ai-verification-steps > div {
  min-height: 210px;
  padding: 22px;
  border: 1px solid rgba(var(--blue-rgb), .22);
  background: rgba(255,255,255,.86);
  display: flex;
  flex-direction: column;
}
.ai-verification-steps span {
  color: var(--blue);
  font: 500 9px/1 var(--mono);
}
.ai-verification-steps b {
  margin: auto 0 10px;
  font-family: var(--display);
  font-size: 24px;
  line-height: 1.06;
  font-weight: 500;
  letter-spacing: -.02em;
}
.ai-verification-steps small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}
.ai-verification-steps > i {
  position: relative;
  align-self: center;
  height: 1px;
  background: rgba(var(--blue-rgb), .35);
}
.ai-verification-steps > i::after {
  content: "";
  position: absolute;
  right: 1px;
  top: 50%;
  width: 7px;
  height: 7px;
  border-top: 1px solid var(--blue);
  border-right: 1px solid var(--blue);
  transform: translateY(-50%) rotate(45deg);
}
.ai-epistemic-note {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(180px, .28fr) minmax(0, 1fr);
  gap: 38px;
  margin-top: 32px;
  padding: 28px 30px;
  border-top: 2px solid var(--ink);
  border-bottom: 1px solid var(--line-strong);
  background: #fff;
}
.ai-epistemic-note > span {
  font: 500 9px/1.4 var(--mono);
  letter-spacing: .12em;
  color: var(--blue);
}
.ai-epistemic-note p {
  margin: 0;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.65;
}
.ai-epistemic-note strong { color: var(--ink); }

/* Application-layer post-quantum scientific IP */
.pq-science {
  display: grid;
  grid-template-columns: minmax(310px, .58fr) minmax(0, 1.42fr);
  margin-top: clamp(70px, 8vw, 120px);
  border: 1px solid var(--line-strong);
  background: #fff;
  box-shadow: 0 28px 80px rgba(7,17,29,.07);
}
.pq-science-copy {
  padding: clamp(38px, 5vw, 72px);
  color: #fff;
  background:
    radial-gradient(circle at 85% 15%, rgba(var(--blue-rgb), .28), transparent 36%),
    var(--ink);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.pq-science-copy .micro-label { color: var(--acid); }
.pq-science-copy h3 {
  margin: 38px 0 28px;
  font-size: clamp(42px, 3.9vw, 70px);
  line-height: .98;
  letter-spacing: -.036em;
  font-weight: 400;
}
.pq-science-copy h3 em { color: var(--acid); font-weight: 400; }
.pq-science-copy p {
  margin: 0 0 34px;
  color: rgba(255,255,255,.62);
  line-height: 1.7;
}
.pq-science-copy .text-link { margin-top: auto; color: #fff; }
.pq-science-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.pq-science-grid article {
  min-height: 470px;
  padding: 26px 24px;
  border-right: 1px solid var(--line);
  display: flex;
  flex-direction: column;
}
.pq-science-grid article:last-child { border-right: 0; }
.pq-science-grid article > span {
  color: var(--blue);
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
}
.pq-science-grid h4 {
  margin: auto 0 14px;
  font-family: var(--display);
  font-size: clamp(25px, 2vw, 34px);
  line-height: 1.06;
  letter-spacing: -.025em;
  font-weight: 500;
}
.pq-science-grid p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.58;
}
.pq-cipher,
.pq-kem,
.pq-flow {
  position: relative;
  min-height: 150px;
  margin: 50px 0 20px;
}
.pq-cipher {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 13px;
  padding: 20px;
  overflow: hidden;
  border: 1px solid rgba(var(--blue-rgb), .22);
  background: #f6f9fe;
}
.pq-cipher::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(110deg, transparent 30%, rgba(var(--blue-rgb), .1), transparent 70%);
  transform: translateX(-100%);
  animation: pqSweep 4.6s linear infinite;
}
@keyframes pqSweep { to { transform: translateX(100%); } }
.pq-cipher i {
  font: 400 10px/1 var(--mono);
  color: #4d5b6e;
  font-style: normal;
  letter-spacing: .08em;
}
.pq-cipher i:last-child { color: var(--blue); }
.pq-kem {
  display: grid;
  grid-template-columns: 1fr 44px 1fr;
  align-items: center;
}
.pq-kem b {
  display: grid;
  place-items: center;
  height: 88px;
  border: 1px solid rgba(var(--blue-rgb), .25);
  color: var(--blue-deep);
  background: #f7faff;
  font: 500 21px/1 var(--mono);
}
.pq-kem i {
  position: relative;
  height: 1px;
  background: var(--blue);
}
.pq-kem i::before,
.pq-kem i::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--blue);
  transform: translateY(-50%);
}
.pq-kem i::before { left: 0; }
.pq-kem i::after { right: 0; }
.pq-flow {
  display: flex;
  align-items: center;
}
.pq-flow b {
  flex: 1;
  display: grid;
  place-items: center;
  min-height: 62px;
  border: 1px solid rgba(var(--blue-rgb), .23);
  color: var(--blue-deep);
  background: #f8faff;
  font: 500 7px/1 var(--mono);
  letter-spacing: .08em;
}
.pq-flow i {
  width: 18px;
  height: 1px;
  background: var(--blue);
}
.pq-boundary {
  grid-column: 2;
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 22px;
  padding: 22px 26px;
  border-top: 1px solid var(--line-strong);
  background: #f7f9fc;
}
.pq-boundary span {
  color: var(--blue);
  font: 500 8px/1.4 var(--mono);
  letter-spacing: .1em;
}
.pq-boundary p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}

/* Ecosystem: dedicated verifiable AI model stack */
.eco-ai-stack {
  position: relative;
  background:
    radial-gradient(circle at 78% 19%, rgba(var(--blue-rgb), .055), transparent 28%),
    #fff;
}
.eco-ai-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.16fr) minmax(340px, .84fr);
  gap: 8vw;
  align-items: end;
  padding: clamp(70px, 8vw, 130px) 0 clamp(75px, 8vw, 128px);
}
.eco-ai-intro-copy {
  max-width: 560px;
}
.eco-ai-intro-copy p {
  margin: 0 0 30px;
  color: #3d4a5d;
  font-family: var(--display);
  font-size: clamp(20px, 1.65vw, 28px);
  line-height: 1.42;
  letter-spacing: -.018em;
}
.eco-ai-flow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 36px minmax(0, 1fr) 36px minmax(0, 1fr) 36px minmax(0, 1fr);
  align-items: stretch;
  border: 1px solid var(--line-strong);
  background: #fff;
  box-shadow: 0 25px 70px rgba(7,17,29,.07);
}
.eco-ai-flow article {
  min-height: 360px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  background: linear-gradient(180deg, rgba(var(--blue-rgb), .025), #fff 45%);
}
.eco-ai-flow article > span {
  color: var(--blue);
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
}
.eco-ai-flow h3 {
  margin: auto 0 14px;
  font-size: clamp(28px, 2.2vw, 39px);
  line-height: 1.02;
  letter-spacing: -.03em;
  font-weight: 500;
}
.eco-ai-flow p {
  margin: 0;
  min-height: 105px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.58;
}
.eco-ai-flow article > b {
  margin-top: 23px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
  color: #4b5b70;
  font: 500 7px/1.4 var(--mono);
  letter-spacing: .08em;
}
.eco-ai-flow > i {
  position: relative;
  align-self: center;
  height: 1px;
  background: rgba(var(--blue-rgb), .33);
}
.eco-ai-flow > i::after {
  content: "";
  position: absolute;
  right: 1px;
  top: 50%;
  width: 7px;
  height: 7px;
  border-top: 1px solid var(--blue);
  border-right: 1px solid var(--blue);
  transform: translateY(-50%) rotate(45deg);
}
.eco-ai-agent {
  display: grid;
  grid-template-columns: minmax(300px, .58fr) minmax(0, .9fr) minmax(250px, .52fr);
  gap: clamp(35px, 6vw, 92px);
  align-items: center;
  margin-top: 36px;
  padding: clamp(34px, 4vw, 58px);
  color: #fff;
  background:
    radial-gradient(circle at 90% 15%, rgba(var(--blue-rgb), .32), transparent 32%),
    var(--ink);
}
.eco-ai-agent .micro-label { color: var(--acid); }
.eco-ai-agent h3 {
  margin: 22px 0 0;
  font-size: clamp(36px, 3.2vw, 58px);
  line-height: .99;
  letter-spacing: -.035em;
  font-weight: 400;
}
.eco-ai-agent h3 em { color: var(--acid); font-weight: 400; }
.eco-ai-agent > p {
  margin: 0;
  color: rgba(255,255,255,.62);
  line-height: 1.7;
}
.eco-ai-agent-status {
  display: flex;
  flex-direction: column;
  border-top: 1px solid rgba(255,255,255,.18);
}
.eco-ai-agent-status span {
  min-height: 48px;
  display: flex;
  align-items: center;
  border-bottom: 1px solid rgba(255,255,255,.18);
  color: rgba(255,255,255,.68);
  font: 500 7px/1.4 var(--mono);
  letter-spacing: .08em;
}
.eco-ai-agent-status span:first-child { color: var(--acid); }
.eco-ai-boundary {
  display: grid;
  grid-template-columns: 310px 1fr;
  gap: 36px;
  margin-top: 28px;
  padding: 24px 28px;
  border: 1px solid var(--line-strong);
  background: #f7f9fc;
}
.eco-ai-boundary strong {
  color: var(--blue-deep);
  font-family: var(--display);
  font-size: 21px;
  font-weight: 500;
}
.eco-ai-boundary p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.6;
}

/* The Forest should read as a living hierarchy rather than a static icon. */
.forest-visual .forest-branch,
.eco-forest-visual .forest-branch {
  stroke-dasharray: 5 4;
  animation: forestTrace 8s linear infinite;
}
.forest-visual .forest-nodes circle,
.eco-forest-visual .forest-nodes circle {
  transform-box: fill-box;
  transform-origin: center;
  animation: forestNodePulse 3.8s ease-in-out infinite;
}
.forest-visual .tree-b .forest-nodes circle,
.eco-forest-visual .tree-b .forest-nodes circle { animation-delay: .7s; }
.forest-visual .tree-c .forest-nodes circle,
.eco-forest-visual .tree-c .forest-nodes circle { animation-delay: 1.35s; }
@keyframes forestTrace { to { stroke-dashoffset: -90; } }
@keyframes forestNodePulse { 0%,100% { transform: scale(1); opacity: .72; } 50% { transform: scale(1.32); opacity: 1; } }

/* Small refinements to existing sections after the AI emphasis. */
.hero-intro { max-width: 69ch; }
.market-integrity strong { max-width: 30ch; line-height: 1.08; }
.audience-row { min-height: 166px; }
.l1-public-goods-copy p:first-of-type { color: #38475a; }

@media (max-width: 1380px) {
  .ai-intro { grid-template-columns: minmax(0, 1.05fr) minmax(330px, .95fr); gap: 60px; }
  .ai-pipeline-stage { padding: 19px 16px; min-height: 292px; }
  .ai-stage-glyph { width: 76px; height: 76px; margin-top: 37px; }
  .ai-pipeline-stage p { font-size: 12px; }
  .ai-proof-grid { grid-template-columns: minmax(0, 1.2fr) minmax(340px, .8fr); }
  .ai-runtime-console { grid-template-columns: repeat(2, 1fr); }
  .ai-runtime-console > div:nth-child(2) { border-right: 0; }
  .ai-runtime-console > div:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.12); }
  .pq-science { grid-template-columns: minmax(300px, .66fr) minmax(0, 1.34fr); }
  .pq-science-grid article { min-height: 450px; padding: 22px 19px; }
}

@media (max-width: 1120px) {
  .ai-intro,
  .eco-ai-intro { grid-template-columns: 1fr; align-items: start; }
  .ai-intro-copy,
  .eco-ai-intro-copy { max-width: 760px; }
  .ai-pipeline-track {
    grid-template-columns: 230px 32px 230px 32px 230px 32px 230px 32px 230px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
  }
  .ai-pipeline-stage { min-height: 280px; }
  .ai-proof-grid { grid-template-columns: 1fr; }
  .ai-runtime-card { border-right: 0; border-bottom: 1px solid var(--line-strong); }
  .ai-capability-stack { grid-template-columns: repeat(3, 1fr); grid-template-rows: none; }
  .ai-capability-card { border-bottom: 0; border-right: 1px solid var(--line-strong); min-height: 360px; }
  .ai-capability-card:last-child { border-right: 0; }
  .ai-institution-panel { grid-template-columns: 1fr; }
  .ai-verification-steps { max-width: 900px; }
  .pq-science { grid-template-columns: 1fr; }
  .pq-science-copy { min-height: 420px; }
  .pq-boundary { grid-column: 1; }
  .eco-ai-flow {
    grid-template-columns: 250px 34px 250px 34px 250px 34px 250px;
    overflow-x: auto;
    scrollbar-width: thin;
  }
  .eco-ai-agent { grid-template-columns: 1fr 1fr; }
  .eco-ai-agent-status { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, 1fr); }
  .eco-ai-agent-status span { justify-content: center; padding: 0 12px; border-right: 1px solid rgba(255,255,255,.18); }
  .eco-ai-agent-status span:last-child { border-right: 0; }
}

@media (max-width: 760px) {
  .verifiable-ai::before { display: none; }
  .ai-intro { padding: 62px 0 68px; gap: 42px; }
  .ai-status-line { gap: 8px; margin-bottom: 26px; }
  .ai-status-line span { width: 100%; justify-content: flex-start; }
  .ai-intro-title .section-title { font-size: clamp(46px, 13vw, 68px); }
  .ai-intro-copy .large-copy { font-size: 23px; }
  .ai-pipeline-head { align-items: flex-start; flex-direction: column; justify-content: center; padding: 16px; }
  .ai-pipeline-track {
    display: grid;
    grid-template-columns: 1fr;
    overflow: visible;
  }
  .ai-pipeline-stage {
    min-height: 238px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
    padding: 20px;
  }
  .ai-pipeline-stage h3 { font-size: 29px; }
  .ai-pipeline-stage p { min-height: 0; font-size: 13px; }
  .ai-stage-glyph { margin: 30px 0 18px; }
  .ai-pipeline-arrow {
    width: 1px;
    height: 28px;
    justify-self: center;
    background: var(--line-strong);
  }
  .ai-pipeline-arrow::after {
    right: auto;
    left: 50%;
    top: auto;
    bottom: 0;
    transform: translateX(-50%) rotate(135deg);
  }
  .ai-pipeline-detail { grid-template-columns: 1fr; gap: 10px; padding: 20px; }
  .ai-proof-grid { margin-top: 46px; }
  .ai-runtime-head { align-items: flex-start; flex-direction: column; justify-content: center; min-height: 78px; padding: 15px 18px; }
  .ai-runtime-visual,
  .ai-runtime-visual svg { min-height: 330px; }
  .ai-runtime-console { grid-template-columns: 1fr; }
  .ai-runtime-console > div,
  .ai-runtime-console > div:nth-child(2) { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.12); }
  .ai-runtime-console > div:last-child { border-bottom: 0; }
  .ai-capability-stack { grid-template-columns: 1fr; }
  .ai-capability-card { min-height: 340px; border-right: 0; border-bottom: 1px solid var(--line-strong); }
  .ai-capability-card:last-child { border-bottom: 0; }
  .ai-institution-panel { margin-top: 44px; padding: 26px 20px; }
  .ai-verification-steps { grid-template-columns: 1fr; gap: 0; }
  .ai-verification-steps > div { min-height: 160px; }
  .ai-verification-steps > i { width: 1px; height: 28px; justify-self: center; }
  .ai-verification-steps > i::after { right: auto; left: 50%; top: auto; bottom: 0; transform: translateX(-50%) rotate(135deg); }
  .ai-epistemic-note { grid-template-columns: 1fr; gap: 13px; padding: 24px 20px; }
  .pq-science-copy { min-height: auto; padding: 38px 22px; }
  .pq-science-grid { grid-template-columns: 1fr; }
  .pq-science-grid article { min-height: 390px; border-right: 0; border-bottom: 1px solid var(--line); }
  .pq-science-grid article:last-child { border-bottom: 0; }
  .pq-boundary { grid-template-columns: 1fr; gap: 10px; padding: 20px; }
  .eco-ai-flow { grid-template-columns: 1fr; overflow: visible; }
  .eco-ai-flow article { min-height: 310px; border-bottom: 1px solid var(--line); }
  .eco-ai-flow > i { width: 1px; height: 28px; justify-self: center; }
  .eco-ai-flow > i::after { right: auto; left: 50%; top: auto; bottom: 0; transform: translateX(-50%) rotate(135deg); }
  .eco-ai-agent { grid-template-columns: 1fr; padding: 28px 22px; }
  .eco-ai-agent-status { grid-column: auto; grid-template-columns: 1fr; }
  .eco-ai-agent-status span { justify-content: flex-start; border-right: 0; }
  .eco-ai-boundary { grid-template-columns: 1fr; gap: 12px; padding: 22px; }
  .audience-row { grid-template-columns: 55px 1fr 24px; gap: 14px; }
  .audience-row p { grid-column: 2 / -1; }
}

@media (max-width: 430px) {
  .ai-pipeline-stage { min-height: 224px; }
  .ai-runtime-equation { left: 16px; font-size: 8px; }
  .ai-replay-button { font-size: 13px; }
  .ai-institution-copy h3,
  .pq-science-copy h3 { font-size: 44px; }
  .pq-cipher,
  .pq-kem,
  .pq-flow { margin-top: 36px; }
}

@media (prefers-reduced-motion: reduce) {
  .ai-signal-dot,
  .pq-cipher::after,
  .forest-visual .forest-branch,
  .eco-forest-visual .forest-branch,
  .forest-visual .forest-nodes circle,
  .eco-forest-visual .forest-nodes circle {
    animation: none !important;
  }
}

/* ========================================================================
   v10 — Molecular science, genomic infrastructure and scientific DAOs
   ======================================================================== */

.bio-frontier {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 76% 12%, rgba(var(--blue-rgb), .065), transparent 28%),
    linear-gradient(180deg, #ffffff 0%, #f9fbfd 100%);
}
.bio-frontier::before {
  content: "BIO";
  position: absolute;
  right: -1.2vw;
  top: 7vw;
  color: transparent;
  -webkit-text-stroke: 1px rgba(7, 17, 29, .035);
  font-family: var(--display);
  font-size: clamp(230px, 27vw, 500px);
  font-weight: 300;
  line-height: .72;
  letter-spacing: -.07em;
  pointer-events: none;
}
.bio-intro {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(360px, .82fr);
  gap: clamp(56px, 8vw, 138px);
  align-items: end;
  padding: clamp(72px, 9vw, 145px) 0 clamp(72px, 8vw, 126px);
}
.bio-intro-title .section-title {
  max-width: 1050px;
  font-size: clamp(58px, 5.55vw, 101px);
}
.bio-status-line {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 34px;
}
.bio-status-line span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,.82);
  color: var(--muted);
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
}
.bio-status-line span:first-child {
  color: var(--blue-deep);
  border-color: rgba(var(--blue-rgb), .26);
  background: rgba(var(--blue-rgb), .045);
}
.bio-status-line i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--blue);
  box-shadow: 0 0 0 4px rgba(var(--blue-rgb), .1);
}
.bio-intro-copy {
  max-width: 635px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.bio-intro-copy p {
  margin: 0;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.72;
}
.bio-intro-copy .large-copy {
  color: var(--ink);
  font-family: var(--display);
  font-size: clamp(22px, 1.72vw, 30px);
  line-height: 1.38;
  letter-spacing: -.018em;
}

.bio-lab {
  position: relative;
  z-index: 2;
  border: 1px solid var(--line-strong);
  background: #fff;
  box-shadow: 0 30px 90px rgba(7,17,29,.075);
}
.bio-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  border-bottom: 1px solid var(--line-strong);
}
.bio-tabs button {
  position: relative;
  min-height: 78px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 14px;
  padding: 0 22px;
  border: 0;
  border-right: 1px solid var(--line);
  background: #fff;
  color: var(--ink);
  text-align: left;
  cursor: pointer;
  transition: background .25s ease, color .25s ease;
}
.bio-tabs button:last-child { border-right: 0; }
.bio-tabs button::before {
  content: "";
  position: absolute;
  left: -1px;
  right: -1px;
  top: -1px;
  height: 3px;
  background: var(--blue);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .28s ease;
}
.bio-tabs button:hover,
.bio-tabs button:focus-visible,
.bio-tabs button.is-active {
  outline: none;
  background: linear-gradient(180deg, rgba(var(--blue-rgb),.055), #fff);
}
.bio-tabs button.is-active::before,
.bio-tabs button:hover::before,
.bio-tabs button:focus-visible::before { transform: scaleX(1); }
.bio-tabs button > span {
  color: var(--blue);
  font: 500 9px/1 var(--mono);
  letter-spacing: .1em;
}
.bio-tabs button > small {
  color: var(--muted);
  font: 500 7px/1 var(--mono);
  letter-spacing: .09em;
}
.bio-tabs button.is-active > small { color: var(--blue-deep); }

.bio-lab-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(380px, .82fr);
  min-height: 630px;
}
.bio-visual {
  position: relative;
  overflow: hidden;
  min-height: 630px;
  border-right: 1px solid var(--line-strong);
  background:
    radial-gradient(circle at 50% 48%, rgba(var(--blue-rgb), .08), transparent 43%),
    #fbfdff;
}
.bio-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .66;
  background-image:
    linear-gradient(rgba(var(--blue-rgb), .06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(var(--blue-rgb), .06) 1px, transparent 1px);
  background-size: 54px 54px;
  mask-image: radial-gradient(circle at center, #000 16%, transparent 78%);
}
.bio-viz {
  position: absolute;
  inset: 0;
  opacity: 0;
  transform: translateY(12px) scale(.985);
  pointer-events: none;
  transition: opacity .42s ease, transform .42s ease;
}
.bio-lab[data-bio-view="pdb"] .bio-viz-pdb,
.bio-lab[data-bio-view="peptide"] .bio-viz-peptide,
.bio-lab[data-bio-view="genome"] .bio-viz-genome {
  opacity: 1;
  transform: translateY(0) scale(1);
}
.bio-viz-readout {
  position: absolute;
  left: 28px;
  right: 28px;
  bottom: 24px;
  display: flex;
  justify-content: space-between;
  gap: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--line-strong);
  color: var(--muted);
  font: 500 8px/1.4 var(--mono);
  letter-spacing: .1em;
}
.bio-viz-readout strong { color: var(--blue-deep); font-weight: 500; }
.bio-viz-pdb svg { position: absolute; inset: 4% 5% 8%; width: 90%; height: 88%; overflow: visible; }
.bio-grid-lines { fill: none; stroke: rgba(var(--blue-rgb), .065); stroke-width: 1; }
.bio-molecule-bonds { fill: none; stroke: #9aa9ba; stroke-width: 9; stroke-linecap: round; stroke-linejoin: round; }
.bio-molecule-atoms circle {
  fill: #fff;
  stroke: var(--blue);
  stroke-width: 3;
  filter: drop-shadow(0 12px 20px rgba(var(--blue-rgb), .18));
}
.bio-molecule-atoms circle:nth-child(3n+2) { stroke: var(--cyan-deep); fill: #f7fbff; }
.bio-molecule-atoms circle:nth-child(4n+1) { fill: var(--blue); stroke: #fff; }
.bio-orbits { fill: none; stroke: rgba(var(--blue-rgb), .2); stroke-width: 1.2; stroke-dasharray: 5 7; }
.bio-orbits circle { fill: var(--blue); stroke: #fff; stroke-width: 4; animation: bioPulse 3.2s ease-in-out infinite; }
@keyframes bioPulse { 0%,100% { r: 6px; opacity: .65; } 50% { r: 10px; opacity: 1; } }

.peptide-sequence {
  position: absolute;
  left: 8%;
  right: 8%;
  top: 30%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.peptide-sequence span {
  width: clamp(46px, 5.2vw, 78px);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border: 1px solid rgba(var(--blue-rgb), .36);
  border-radius: 50%;
  color: var(--blue-deep);
  background: #fff;
  box-shadow: 0 14px 30px rgba(var(--blue-rgb), .12);
  font: 500 clamp(20px, 2.2vw, 34px)/1 var(--mono);
}
.peptide-sequence i { flex: 1; max-width: 44px; height: 1px; background: var(--blue); }
.peptide-target {
  position: absolute;
  right: 11%;
  bottom: 22%;
  width: 150px;
  aspect-ratio: 1;
  border: 1px solid rgba(var(--blue-rgb), .22);
  border-radius: 50%;
}
.peptide-target::before,
.peptide-target::after,
.peptide-target i {
  content: "";
  position: absolute;
  border: 1px solid rgba(var(--blue-rgb), .16);
  border-radius: 50%;
}
.peptide-target::before { inset: 23px; }
.peptide-target::after { inset: 48px; }
.peptide-target i:nth-child(1) { width: 7px; height: 7px; left: 20%; top: 28%; background: var(--blue); border: 0; }
.peptide-target i:nth-child(2) { width: 5px; height: 5px; right: 18%; top: 47%; background: var(--cyan-deep); border: 0; }
.peptide-target i:nth-child(3) { width: 9px; height: 9px; left: 48%; bottom: 14%; background: var(--blue); border: 0; }
.peptide-target strong { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); color: var(--muted); font: 500 7px/1 var(--mono); letter-spacing: .08em; }
.peptide-curve { position: absolute; left: 5%; right: 5%; bottom: 10%; width: 90%; height: 42%; fill: none; stroke: rgba(var(--blue-rgb), .21); stroke-width: 1.5; }
.peptide-curve path:last-child { stroke-dasharray: 5 7; }

.genome-code {
  position: absolute;
  left: 7%;
  top: 15%;
  display: flex;
  flex-direction: column;
  gap: 13px;
  padding: 24px;
  border: 1px solid rgba(var(--blue-rgb), .22);
  background: rgba(255,255,255,.82);
  box-shadow: 0 18px 48px rgba(7,17,29,.06);
}
.genome-code span { color: var(--blue); font: 500 8px/1 var(--mono); letter-spacing: .1em; }
.genome-code b { color: #425169; font: 400 15px/1 var(--mono); letter-spacing: .18em; }
.genome-helix {
  position: absolute;
  left: 48%;
  top: 7%;
  width: 42%;
  height: 76%;
  overflow: hidden;
}
.genome-helix::before,
.genome-helix::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 2px;
  background: linear-gradient(180deg, transparent, var(--blue), var(--cyan-deep), transparent);
  transform-origin: 50% 50%;
}
.genome-helix::before { left: 34%; transform: skewY(-26deg); }
.genome-helix::after { right: 34%; transform: skewY(26deg); }
.genome-helix span {
  --p: calc(var(--i) / 13);
  position: absolute;
  left: calc(20% + sin(calc(var(--i) * 27deg)) * 10%);
  right: calc(20% - sin(calc(var(--i) * 27deg)) * 10%);
  top: calc(5% + var(--i) * 6.8%);
  height: 1px;
  background: rgba(var(--blue-rgb), .48);
  transform: rotate(calc(sin(calc(var(--i) * 31deg)) * 13deg));
}
.genome-helix span::before,
.genome-helix span::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid var(--blue);
  transform: translateY(-50%);
}
.genome-helix span::before { left: -3px; }
.genome-helix span::after { right: -3px; }

.bio-lab-copy {
  display: flex;
  flex-direction: column;
  padding: clamp(34px, 4.2vw, 66px);
  background: #fff;
}
.bio-lab-status {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--blue-deep);
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
}
.bio-lab-status i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--blue);
  box-shadow: 0 0 0 5px rgba(var(--blue-rgb), .09);
}
.bio-lab-copy h3 {
  margin: clamp(36px, 5vw, 78px) 0 24px;
  max-width: 12ch;
  font-size: clamp(43px, 4vw, 72px);
  line-height: .99;
  letter-spacing: -.045em;
  font-weight: 400;
}
.bio-lab-copy > p {
  margin: 0;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.72;
}
.bio-metrics {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  margin: auto 0 34px;
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}
.bio-metrics > div {
  min-height: 112px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 17px 14px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.bio-metrics strong {
  color: var(--blue-deep);
  font-family: var(--display);
  font-size: clamp(24px, 2vw, 34px);
  font-weight: 400;
  letter-spacing: -.035em;
}
.bio-metrics span { color: var(--muted); font: 500 7px/1.45 var(--mono); letter-spacing: .08em; }

.bio-capability-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  margin-top: clamp(50px, 6vw, 92px);
  border-top: 1px solid var(--line-strong);
  border-left: 1px solid var(--line-strong);
}
.bio-capability-card {
  min-height: 410px;
  display: flex;
  flex-direction: column;
  padding: clamp(26px, 3.2vw, 48px);
  border-right: 1px solid var(--line-strong);
  border-bottom: 1px solid var(--line-strong);
  background: rgba(255,255,255,.92);
  transition: transform .28s ease, box-shadow .28s ease, background .28s ease;
}
.bio-capability-card:hover { z-index: 2; transform: translateY(-5px); box-shadow: 0 24px 62px rgba(7,17,29,.085); background: #fff; }
.bio-capability-card > div { display: flex; justify-content: space-between; color: var(--blue); font: 500 8px/1 var(--mono); letter-spacing: .1em; }
.bio-capability-card > div b { font-weight: 500; }
.bio-capability-card h3 {
  margin: auto 0 18px;
  max-width: 18ch;
  font-size: clamp(29px, 2.4vw, 44px);
  line-height: 1.03;
  letter-spacing: -.035em;
  font-weight: 500;
}
.bio-capability-card p { margin: 0; max-width: 62ch; color: var(--muted); font-size: 14px; line-height: 1.65; }
.bio-capability-card a { margin-top: 28px; width: max-content; color: var(--ink); font-size: 12px; font-weight: 700; border-bottom: 1px solid currentColor; }
.bio-capability-card a:hover { color: var(--blue); }

.bio-discovery-rail {
  margin-top: 34px;
  padding: 27px 28px;
  border: 1px solid var(--line-strong);
  background: #f5f8fc;
}
.bio-discovery-rail > span { color: var(--blue); font: 500 8px/1 var(--mono); letter-spacing: .1em; }
.bio-discovery-rail > div { display: flex; align-items: center; margin: 26px 0 20px; }
.bio-discovery-rail b { flex: 1; min-height: 58px; display: grid; place-items: center; border: 1px solid rgba(var(--blue-rgb),.2); background: #fff; font: 500 10px/1 var(--mono); letter-spacing: .06em; }
.bio-discovery-rail i { width: 22px; height: 1px; background: var(--blue); }
.bio-discovery-rail p { max-width: 980px; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }

/* Scientific DAO section */
.scientific-daos,
.eco-dao-engine {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 77% 15%, rgba(var(--blue-rgb),.06), transparent 29%),
    linear-gradient(180deg,#f7f9fc 0%,#fff 100%);
}
.scientific-daos::before,
.eco-dao-engine::before {
  content: "DAO";
  position: absolute;
  right: -1.4vw;
  top: 6vw;
  color: transparent;
  -webkit-text-stroke: 1px rgba(7,17,29,.04);
  font-family: var(--display);
  font-size: clamp(210px, 25vw, 460px);
  font-weight: 300;
  line-height: .75;
  letter-spacing: -.08em;
  pointer-events: none;
}
.dao-intro,
.eco-dao-intro {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(350px,.85fr);
  gap: clamp(56px,8vw,130px);
  align-items: end;
  padding: clamp(72px,9vw,145px) 0 clamp(70px,8vw,124px);
}
.dao-intro-title .section-title,
.eco-dao-intro .section-title { max-width: 1040px; font-size: clamp(58px,5.45vw,98px); }
.dao-roadmap-label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 34px;
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid rgba(var(--blue-rgb),.24);
  background: rgba(var(--blue-rgb),.045);
  color: var(--blue-deep);
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
}
.dao-roadmap-label i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--blue);
  box-shadow: 0 0 0 4px rgba(var(--blue-rgb),.1);
}
.dao-intro-copy,
.eco-dao-intro-copy { max-width: 630px; display: flex; flex-direction: column; gap: 24px; }
.dao-intro-copy p,
.eco-dao-intro-copy p { margin: 0; color: var(--muted); font-size: 16px; line-height: 1.72; }
.dao-intro-copy .large-copy { color: var(--ink); font-family: var(--display); font-size: clamp(22px,1.72vw,30px); line-height: 1.38; letter-spacing: -.018em; }
.eco-dao-intro-copy p:first-child { color: var(--ink); font-family: var(--display); font-size: clamp(21px,1.65vw,28px); line-height: 1.42; letter-spacing: -.018em; }

.dao-system {
  position: relative;
  z-index: 2;
  border: 1px solid var(--line-strong);
  background: #fff;
  box-shadow: 0 30px 90px rgba(7,17,29,.08);
}
.dao-system-head {
  min-height: 60px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 0 22px;
  border-bottom: 1px solid var(--line-strong);
  color: var(--muted);
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
}
.dao-system-head span { display: flex; align-items: center; gap: 9px; color: var(--ink); }
.dao-system-head i { width: 6px; height: 6px; border-radius: 50%; background: var(--blue); box-shadow: 0 0 0 5px rgba(var(--blue-rgb),.09); }
.dao-system-head b { color: var(--blue-deep); font-weight: 500; }
.dao-system-grid {
  display: grid;
  grid-template-columns: minmax(230px,.42fr) minmax(520px,1.1fr) minmax(350px,.58fr);
  min-height: 690px;
}
.dao-tabs {
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--line-strong);
}
.dao-tabs button {
  position: relative;
  flex: 1;
  min-height: 180px;
  display: grid;
  grid-template-columns: 40px 1fr;
  grid-template-rows: auto auto;
  align-content: center;
  gap: 12px 14px;
  padding: 28px 24px;
  border: 0;
  border-bottom: 1px solid var(--line);
  background: #fff;
  text-align: left;
  cursor: pointer;
  transition: background .24s ease;
}
.dao-tabs button:last-child { border-bottom: 0; }
.dao-tabs button::before {
  content: "";
  position: absolute;
  left: -1px;
  top: -1px;
  bottom: -1px;
  width: 3px;
  background: var(--blue);
  transform: scaleY(0);
  transform-origin: top;
  transition: transform .25s ease;
}
.dao-tabs button:hover,
.dao-tabs button:focus-visible,
.dao-tabs button.is-active { outline: none; background: linear-gradient(90deg,rgba(var(--blue-rgb),.055),#fff); }
.dao-tabs button:hover::before,
.dao-tabs button:focus-visible::before,
.dao-tabs button.is-active::before { transform: scaleY(1); }
.dao-tabs button > span { grid-row: 1 / 3; color: var(--blue); font: 500 9px/1 var(--mono); letter-spacing: .1em; }
.dao-tabs button > b { font-family: var(--display); font-size: clamp(22px,1.75vw,30px); line-height: 1.06; letter-spacing: -.025em; font-weight: 500; }
.dao-tabs button > small { color: var(--muted); font: 500 7px/1.5 var(--mono); letter-spacing: .08em; }

.dao-orbit {
  position: relative;
  overflow: hidden;
  min-height: 690px;
  border-right: 1px solid var(--line-strong);
  background:
    radial-gradient(circle at center, rgba(var(--blue-rgb),.08), transparent 45%),
    #fbfdff;
}
.dao-orbit::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(var(--blue-rgb),.055) 1px,transparent 1px), linear-gradient(90deg,rgba(var(--blue-rgb),.055) 1px,transparent 1px);
  background-size: 54px 54px;
  mask-image: radial-gradient(circle at center,#000 16%,transparent 80%);
}
.dao-orbit > svg {
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(94%,660px);
  height: min(94%,660px);
  transform: translate(-50%,-50%);
  fill: none;
  stroke: rgba(var(--blue-rgb),.18);
  stroke-width: 1;
}
.dao-orbit > svg circle:nth-child(1) { stroke-dasharray: 5 7; animation: daoOrbitSpin 34s linear infinite; transform-origin: center; }
.dao-orbit > svg circle:nth-child(2) { stroke-dasharray: 2 6; animation: daoOrbitSpin 26s linear reverse infinite; transform-origin: center; }
@keyframes daoOrbitSpin { to { transform: rotate(360deg); } }
.dao-core {
  position: absolute;
  z-index: 3;
  left: 50%;
  top: 50%;
  width: 176px;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 7px;
  transform: translate(-50%,-50%);
  border: 1px solid rgba(var(--blue-rgb),.3);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 24px 60px rgba(7,17,29,.11), 0 0 0 18px rgba(255,255,255,.66);
}
.dao-core img { width: 58px; height: 58px; }
.dao-core strong { font-family: var(--display); font-size: 18px; letter-spacing: -.02em; font-weight: 500; }
.dao-core span { color: var(--muted); font: 500 7px/1 var(--mono); letter-spacing: .09em; }
.dao-module {
  position: absolute;
  z-index: 2;
  min-width: 104px;
  min-height: 34px;
  display: grid;
  place-items: center;
  padding: 0 12px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,.92);
  color: #657184;
  font: 500 7px/1 var(--mono);
  letter-spacing: .09em;
  box-shadow: 0 10px 28px rgba(7,17,29,.05);
  transition: color .3s ease, border-color .3s ease, background .3s ease, transform .3s ease, box-shadow .3s ease;
}
.dao-module-1 { left: 50%; top: 8%; transform: translateX(-50%); }
.dao-module-2 { right: 8%; top: 22%; }
.dao-module-3 { right: 4%; top: 49%; }
.dao-module-4 { right: 10%; bottom: 18%; }
.dao-module-5 { left: 50%; bottom: 7%; transform: translateX(-50%); }
.dao-module-6 { left: 8%; bottom: 18%; }
.dao-module-7 { left: 4%; top: 49%; }
.dao-module-8 { left: 9%; top: 22%; }
.dao-system[data-dao-view="fund"] [data-dao-module="fund"],
.dao-system[data-dao-view="research"] [data-dao-module="research"],
.dao-system[data-dao-view="federate"] [data-dao-module="federate"] {
  color: var(--blue-deep);
  border-color: rgba(var(--blue-rgb),.42);
  background: #fff;
  box-shadow: 0 14px 34px rgba(var(--blue-rgb),.12);
}
.dao-system[data-dao-view="fund"] .dao-module-1,
.dao-system[data-dao-view="fund"] .dao-module-5,
.dao-system[data-dao-view="research"] .dao-module-3,
.dao-system[data-dao-view="research"] .dao-module-4,
.dao-system[data-dao-view="federate"] .dao-module-6,
.dao-system[data-dao-view="federate"] .dao-module-7 { transform: translateY(-4px); }
.dao-system[data-dao-view="fund"] .dao-module-1,
.dao-system[data-dao-view="fund"] .dao-module-5 { transform: translateX(-50%) translateY(-4px); }

.dao-system-copy {
  display: flex;
  flex-direction: column;
  padding: clamp(34px,3.8vw,58px);
  background: #fff;
}
.dao-system-copy > span { color: var(--blue-deep); font: 500 8px/1.4 var(--mono); letter-spacing: .1em; }
.dao-system-copy h3 {
  margin: clamp(38px,5vw,78px) 0 24px;
  max-width: 11ch;
  font-size: clamp(39px,3.4vw,61px);
  line-height: 1;
  letter-spacing: -.042em;
  font-weight: 400;
}
.dao-system-copy > p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.7; }
.dao-output-list { margin-top: auto; border-top: 1px solid var(--line); }
.dao-output-list > div { display: grid; grid-template-columns: 130px 1fr; gap: 15px; min-height: 74px; align-items: center; border-bottom: 1px solid var(--line); }
.dao-output-list span { color: var(--muted); font: 500 7px/1.3 var(--mono); letter-spacing: .08em; }
.dao-output-list strong { color: #344255; font: 500 8px/1.4 var(--mono); letter-spacing: .06em; font-weight: 500; }

.dao-capability-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  margin-top: clamp(46px,5vw,78px);
  border-top: 1px solid var(--line-strong);
  border-left: 1px solid var(--line-strong);
}
.dao-capability-card {
  min-height: 330px;
  display: flex;
  flex-direction: column;
  padding: clamp(24px,2.8vw,40px);
  border-right: 1px solid var(--line-strong);
  border-bottom: 1px solid var(--line-strong);
  background: rgba(255,255,255,.94);
}
.dao-capability-card > span { color: var(--blue); font: 500 8px/1 var(--mono); letter-spacing: .1em; }
.dao-capability-card h3 { margin: auto 0 17px; max-width: 18ch; font-size: clamp(27px,2.15vw,38px); line-height: 1.05; letter-spacing: -.03em; font-weight: 500; }
.dao-capability-card p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.62; }
.dao-archetypes {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  margin-top: 32px;
  color: #fff;
  background: var(--ink);
}
.dao-archetypes article { min-height: 330px; display: flex; flex-direction: column; padding: 34px; border-right: 1px solid rgba(255,255,255,.13); }
.dao-archetypes article:last-child { border-right: 0; }
.dao-archetypes span { color: var(--acid); font: 500 8px/1 var(--mono); letter-spacing: .1em; }
.dao-archetypes h3 { margin: auto 0 18px; font-size: clamp(28px,2.3vw,42px); line-height: 1.04; letter-spacing: -.035em; font-weight: 400; }
.dao-archetypes p { margin: 0; color: rgba(255,255,255,.58); font-size: 13px; line-height: 1.62; }
.dao-boundary,
.eco-dao-note {
  display: grid;
  grid-template-columns: 250px 1fr auto;
  gap: 28px;
  align-items: center;
  margin-top: 28px;
  padding: 24px 28px;
  border: 1px solid var(--line-strong);
  background: #fff;
}
.dao-boundary strong,
.eco-dao-note strong { color: var(--blue-deep); font: 500 9px/1.4 var(--mono); letter-spacing: .1em; }
.dao-boundary p,
.eco-dao-note p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }

/* Compact future programs below the homepage ecosystem. */
.ecosystem-future-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  margin-top: 34px;
  border-top: 1px solid var(--line-strong);
  border-left: 1px solid var(--line-strong);
}
.ecosystem-future-grid a {
  min-height: 300px;
  display: flex;
  flex-direction: column;
  padding: 28px;
  border-right: 1px solid var(--line-strong);
  border-bottom: 1px solid var(--line-strong);
  background: #fff;
  transition: transform .28s ease, box-shadow .28s ease;
}
.ecosystem-future-grid a:hover { z-index: 2; transform: translateY(-5px); box-shadow: 0 24px 62px rgba(7,17,29,.09); }
.ecosystem-future-grid span { color: var(--blue); font: 500 8px/1 var(--mono); letter-spacing: .1em; }
.ecosystem-future-grid h3 { margin: auto 0 14px; font-size: clamp(30px,2.4vw,43px); line-height: 1; letter-spacing: -.035em; font-weight: 500; }
.ecosystem-future-grid p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.6; }
.ecosystem-future-grid b { margin-top: 24px; font-size: 12px; }

/* Ecosystem biology section */
.eco-bio-stack {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 75% 17%, rgba(var(--blue-rgb),.055), transparent 28%),
    #fff;
}
.eco-bio-intro {
  display: grid;
  grid-template-columns: minmax(0,1.16fr) minmax(340px,.84fr);
  gap: 8vw;
  align-items: end;
  padding: clamp(70px,8vw,130px) 0 clamp(75px,8vw,128px);
}
.eco-bio-intro-copy { max-width: 590px; }
.eco-bio-intro-copy p { margin: 0 0 30px; color: #3d4a5d; font-family: var(--display); font-size: clamp(20px,1.65vw,28px); line-height: 1.42; letter-spacing: -.018em; }
.eco-bio-panels {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  border-top: 1px solid var(--line-strong);
  border-left: 1px solid var(--line-strong);
}
.eco-bio-panel {
  min-height: 610px;
  display: flex;
  flex-direction: column;
  padding: 26px;
  border-right: 1px solid var(--line-strong);
  border-bottom: 1px solid var(--line-strong);
  background: #fff;
}
.eco-bio-live { box-shadow: inset 0 3px 0 var(--blue); }
.eco-bio-panel-top { display: flex; justify-content: space-between; color: var(--blue); font: 500 8px/1 var(--mono); letter-spacing: .1em; }
.eco-bio-panel-top b { font-weight: 500; }
.eco-bio-panel-graphic { position: relative; height: 250px; margin: 46px 0 38px; overflow: hidden; border: 1px solid var(--line); background: #f8fbff; }
.eco-bio-panel h3 { margin: auto 0 18px; font-size: clamp(31px,2.55vw,45px); line-height: 1.02; letter-spacing: -.037em; font-weight: 500; }
.eco-bio-panel p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.62; }
.eco-bio-panel > a { margin-top: 25px; width: max-content; font-size: 12px; font-weight: 700; border-bottom: 1px solid currentColor; }
.eco-bio-panel > a:hover { color: var(--blue); }
.eco-bio-pdb i { position: absolute; width: 34px; height: 34px; border: 2px solid var(--blue); border-radius: 50%; background: #fff; box-shadow: 0 10px 24px rgba(var(--blue-rgb),.12); }
.eco-bio-pdb i:nth-child(1){left:18%;top:49%}.eco-bio-pdb i:nth-child(2){left:35%;top:27%;width:26px;height:26px}.eco-bio-pdb i:nth-child(3){left:51%;top:44%;width:48px;height:48px}.eco-bio-pdb i:nth-child(4){left:72%;top:26%;width:23px;height:23px}.eco-bio-pdb i:nth-child(5){left:78%;top:66%;width:39px;height:39px}.eco-bio-pdb i:nth-child(6){left:42%;top:70%;width:29px;height:29px}
.eco-bio-pdb::before { content:""; position:absolute; left:18%; right:14%; top:52%; height:2px; background:linear-gradient(90deg,var(--blue),#9fb4c8,var(--blue)); transform:rotate(-8deg); }
.eco-bio-pdb span { position: absolute; right: 18px; bottom: 13px; color: var(--blue-deep); font: 500 32px/1 var(--display); }
.eco-bio-peptide { display:flex; align-items:center; justify-content:center; padding:28px; }
.eco-bio-peptide span { width:44px; height:44px; display:grid; place-items:center; border:1px solid var(--blue); border-radius:50%; color:var(--blue-deep); background:#fff; font:500 16px/1 var(--mono); }
.eco-bio-peptide i { flex:1; height:1px; background:var(--blue); }
.eco-bio-genome { display:grid; grid-template-columns:1fr auto; align-content:center; gap:12px 20px; padding:34px; }
.eco-bio-genome strong { font:400 18px/1 var(--mono); letter-spacing:.16em; }
.eco-bio-genome span { color:var(--blue); font:500 8px/1 var(--mono); letter-spacing:.1em; }
.eco-bio-rail { display:flex; align-items:center; margin-top:30px; padding:22px; border:1px solid var(--line-strong); background:#f7f9fc; }
.eco-bio-rail span { flex:1; min-height:48px; display:grid; place-items:center; border:1px solid rgba(var(--blue-rgb),.2); background:#fff; color:#314157; font:500 8px/1 var(--mono); letter-spacing:.08em; }
.eco-bio-rail i { width:18px; height:1px; background:var(--blue); }

/* Ecosystem application visuals for planned biotech and DAO programs. */
.eco-peptl-visual { background: radial-gradient(circle at 76% 62%,rgba(var(--blue-rgb),.08),transparent 26%), linear-gradient(145deg,#f7faff,#fff); }
.eco-peptide-chain { position:absolute; left:6%; right:6%; top:29%; display:flex; align-items:center; }
.eco-peptide-chain span { width:48px; height:48px; display:grid; place-items:center; border:1px solid var(--blue); border-radius:50%; color:var(--blue-deep); background:#fff; font:500 16px/1 var(--mono); box-shadow:0 10px 22px rgba(var(--blue-rgb),.1); }
.eco-peptide-chain i { flex:1; height:1px; background:var(--blue); }
.eco-peptl-target { position:absolute; right:10%; bottom:12%; width:138px; aspect-ratio:1; border:1px solid rgba(var(--blue-rgb),.22); border-radius:50%; }
.eco-peptl-target::before,.eco-peptl-target::after { content:""; position:absolute; border:1px solid rgba(var(--blue-rgb),.16); border-radius:50%; }
.eco-peptl-target::before{inset:24px}.eco-peptl-target::after{inset:48px}
.eco-peptl-target i { position:absolute; width:6px; height:6px; border-radius:50%; background:var(--blue); }
.eco-peptl-target i:nth-child(1){left:18%;top:28%}.eco-peptl-target i:nth-child(2){right:18%;top:49%}.eco-peptl-target i:nth-child(3){left:48%;bottom:15%}
.eco-peptl-target b { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); color:var(--muted); font:500 7px/1 var(--mono); letter-spacing:.08em; white-space:nowrap; }
.eco-seq-visual { display:grid; grid-template-columns:1fr .72fr; align-items:center; gap:30px; padding:42px; background:#0d1724; color:#fff; }
.eco-seq-code { display:flex; flex-direction:column; gap:15px; }
.eco-seq-code span { color:var(--acid); font:500 8px/1 var(--mono); letter-spacing:.1em; }
.eco-seq-code strong { font:400 clamp(18px,2vw,28px)/1 var(--mono); letter-spacing:.17em; }
.eco-seq-bars { height:190px; display:flex; align-items:end; gap:9px; border-left:1px solid rgba(255,255,255,.16); border-bottom:1px solid rgba(255,255,255,.16); padding:12px; }
.eco-seq-bars i { flex:1; height:var(--h); background:linear-gradient(180deg,var(--acid),var(--blue)); }
.eco-dao-visual { background:radial-gradient(circle at center,rgba(var(--blue-rgb),.1),transparent 48%),#fbfdff; }
.eco-dao-visual::before,.eco-dao-visual::after { content:""; position:absolute; left:50%; top:50%; border:1px solid rgba(var(--blue-rgb),.18); border-radius:50%; transform:translate(-50%,-50%); }
.eco-dao-visual::before{width:290px;height:290px}.eco-dao-visual::after{width:190px;height:190px;border-style:dashed}
.eco-dao-core { position:absolute; z-index:2; left:50%; top:50%; width:104px; height:104px; display:grid; place-items:center; transform:translate(-50%,-50%); border:1px solid var(--blue); border-radius:50%; background:#fff; color:var(--blue-deep); font:500 22px/1 var(--mono); box-shadow:0 18px 44px rgba(var(--blue-rgb),.13); }
.eco-dao-visual .edn { position:absolute; z-index:2; min-width:76px; min-height:28px; display:grid; place-items:center; padding:0 8px; border:1px solid var(--line); background:#fff; color:#526174; font:500 7px/1 var(--mono); letter-spacing:.08em; }
.edn-1{left:50%;top:11%;transform:translateX(-50%)}.edn-2{right:9%;top:29%}.edn-3{right:10%;bottom:25%}.edn-4{left:50%;bottom:9%;transform:translateX(-50%)}.edn-5{left:9%;bottom:25%}.edn-6{left:9%;top:29%}

/* New ecosystem sections participate in the same white editorial rhythm. */
.eco-bio-stack,
.eco-dao-engine { background-color: #fff; }
.eco-dao-engine .dao-system { margin-top: 0; }
.eco-dao-note { margin-top: 28px; }

/* Section balance after adding biological and institutional depth. */
.ai-status-line { row-gap: 10px; }
.hero-intro { max-width: 73ch; }
.audience-list .audience-row:last-child { border-bottom: 1px solid var(--line-strong); }

@media (max-width: 1380px) {
  .bio-intro,
  .dao-intro,
  .eco-dao-intro { grid-template-columns: minmax(0,1.05fr) minmax(330px,.95fr); gap: 60px; }
  .bio-lab-grid { grid-template-columns: minmax(0,1.05fr) minmax(360px,.95fr); }
  .dao-system-grid { grid-template-columns: minmax(210px,.38fr) minmax(460px,1.04fr) minmax(320px,.58fr); }
  .dao-module { min-width: 92px; padding: 0 9px; }
  .eco-bio-panel { min-height: 630px; }
}

@media (max-width: 1120px) {
  .bio-intro,
  .dao-intro,
  .eco-bio-intro,
  .eco-dao-intro { grid-template-columns: 1fr; align-items: start; }
  .bio-intro-copy,
  .dao-intro-copy,
  .eco-bio-intro-copy,
  .eco-dao-intro-copy { max-width: 780px; }
  .bio-lab-grid { grid-template-columns: 1fr; }
  .bio-visual { min-height: 570px; border-right: 0; border-bottom: 1px solid var(--line-strong); }
  .bio-lab-copy { min-height: 540px; }
  .bio-capability-grid { grid-template-columns: 1fr 1fr; }
  .bio-discovery-rail > div { overflow-x: auto; scrollbar-width: thin; }
  .bio-discovery-rail b { min-width: 142px; }

  .dao-system-grid { grid-template-columns: 1fr 1fr; }
  .dao-tabs { grid-column: 1 / -1; flex-direction: row; border-right: 0; border-bottom: 1px solid var(--line-strong); }
  .dao-tabs button { min-height: 150px; border-bottom: 0; border-right: 1px solid var(--line); }
  .dao-tabs button:last-child { border-right: 0; }
  .dao-tabs button::before { left: -1px; right: -1px; top: -1px; bottom: auto; width: auto; height: 3px; transform: scaleX(0); transform-origin: left; }
  .dao-tabs button:hover::before,.dao-tabs button:focus-visible::before,.dao-tabs button.is-active::before { transform: scaleX(1); }
  .dao-orbit { border-right: 1px solid var(--line-strong); }
  .dao-system-copy { min-height: 690px; }
  .dao-capability-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .dao-archetypes { grid-template-columns: 1fr; }
  .dao-archetypes article { min-height: 270px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.13); }
  .dao-archetypes article:last-child { border-bottom: 0; }
  .dao-boundary,.eco-dao-note { grid-template-columns: 1fr; gap: 14px; }
  .ecosystem-future-grid { grid-template-columns: 1fr; }
  .ecosystem-future-grid a { min-height: 250px; }
  .eco-bio-panels { grid-template-columns: 1fr; }
  .eco-bio-panel { min-height: 520px; }
  .eco-bio-panel-graphic { height: 230px; }
}

@media (max-width: 760px) {
  .bio-frontier::before,
  .scientific-daos::before,
  .eco-dao-engine::before { display: none; }
  .bio-intro,
  .dao-intro,
  .eco-bio-intro,
  .eco-dao-intro { padding: 62px 0 68px; gap: 42px; }
  .bio-status-line { gap: 8px; margin-bottom: 26px; }
  .bio-status-line span { width: 100%; }
  .bio-intro-title .section-title,
  .dao-intro-title .section-title,
  .eco-dao-intro .section-title { font-size: clamp(45px,13vw,68px); }
  .bio-intro-copy .large-copy,
  .dao-intro-copy .large-copy { font-size: 23px; }
  .bio-tabs { grid-template-columns: 1fr; }
  .bio-tabs button { min-height: 68px; border-right: 0; border-bottom: 1px solid var(--line); }
  .bio-tabs button:last-child { border-bottom: 0; }
  .bio-tabs button::before { left: -1px; right: auto; top: -1px; bottom: -1px; width: 3px; height: auto; transform: scaleY(0); transform-origin: top; }
  .bio-tabs button.is-active::before,.bio-tabs button:hover::before,.bio-tabs button:focus-visible::before { transform: scaleY(1); }
  .bio-visual { min-height: 430px; }
  .bio-viz-readout { left: 16px; right: 16px; bottom: 15px; flex-direction: column; gap: 7px; }
  .bio-viz-pdb svg { inset: 5% 1% 12%; width: 98%; height: 83%; }
  .peptide-sequence { left: 4%; right: 4%; top: 29%; }
  .peptide-sequence span { width: 42px; }
  .peptide-sequence i { max-width: 20px; }
  .peptide-target { width: 110px; right: 8%; bottom: 18%; }
  .genome-code { left: 4%; top: 9%; padding: 17px; }
  .genome-code b { font-size: 11px; }
  .genome-helix { left: 44%; width: 53%; }
  .bio-lab-copy { min-height: 520px; padding: 28px 22px; }
  .bio-lab-copy h3 { max-width: none; font-size: 45px; }
  .bio-metrics { grid-template-columns: 1fr; margin-top: 42px; }
  .bio-metrics > div { min-height: 84px; }
  .bio-capability-grid { grid-template-columns: 1fr; }
  .bio-capability-card { min-height: 340px; padding: 26px 22px; }
  .bio-discovery-rail { padding: 22px 18px; }
  .bio-discovery-rail > div { margin: 22px 0 18px; }

  .dao-system-head { min-height: 78px; align-items: flex-start; justify-content: center; flex-direction: column; padding: 14px 18px; }
  .dao-system-grid { grid-template-columns: 1fr; }
  .dao-tabs { grid-column: auto; flex-direction: column; }
  .dao-tabs button { min-height: 120px; border-right: 0; border-bottom: 1px solid var(--line); }
  .dao-tabs button::before { left: -1px; top: -1px; bottom: -1px; right: auto; width: 3px; height: auto; transform: scaleY(0); transform-origin: top; }
  .dao-tabs button:hover::before,.dao-tabs button:focus-visible::before,.dao-tabs button.is-active::before { transform: scaleY(1); }
  .dao-orbit { min-height: 520px; border-right: 0; border-bottom: 1px solid var(--line-strong); }
  .dao-core { width: 132px; }
  .dao-core img { width: 46px; height: 46px; }
  .dao-module { min-width: 72px; min-height: 28px; padding: 0 6px; font-size: 6px; }
  .dao-module-1{top:9%}.dao-module-2{right:4%;top:22%}.dao-module-3{right:2%;top:49%}.dao-module-4{right:5%;bottom:19%}.dao-module-5{bottom:8%}.dao-module-6{left:4%;bottom:19%}.dao-module-7{left:2%;top:49%}.dao-module-8{left:5%;top:22%}
  .dao-system-copy { min-height: 510px; padding: 30px 22px; }
  .dao-system-copy h3 { max-width: none; font-size: 43px; }
  .dao-output-list > div { grid-template-columns: 105px 1fr; }
  .dao-capability-grid { grid-template-columns: 1fr; }
  .dao-capability-card { min-height: 290px; }
  .dao-archetypes article { padding: 28px 22px; }
  .dao-boundary,.eco-dao-note { padding: 22px 20px; }
  .ecosystem-future-grid a { padding: 24px 22px; }
  .eco-bio-rail { overflow-x: auto; scrollbar-width: thin; }
  .eco-bio-rail span { min-width: 120px; }
  .eco-bio-panel { min-height: 530px; padding: 23px 20px; }
  .eco-bio-panel-graphic { margin: 36px 0 30px; }
  .eco-peptide-chain span { width: 38px; height: 38px; font-size: 13px; }
  .eco-peptide-chain i { min-width: 10px; }
  .eco-seq-visual { grid-template-columns: 1fr; padding: 28px; }
  .eco-seq-bars { height: 90px; }
}

@media (max-width: 430px) {
  .peptide-sequence span { width: 34px; font-size: 15px; }
  .peptide-sequence i { max-width: 10px; }
  .peptide-target { display: none; }
  .genome-code { right: 4%; }
  .genome-helix { opacity: .38; left: 42%; width: 56%; }
  .bio-lab-copy h3,.dao-system-copy h3 { font-size: 39px; }
  .dao-orbit { min-height: 450px; }
  .dao-module { min-width: 62px; font-size: 5.5px; }
  .eco-peptl-target { display: none; }
  .eco-peptide-chain { top: 41%; }
  .eco-peptide-chain span { width: 34px; height: 34px; }
}

@media (prefers-reduced-motion: reduce) {
  .bio-orbits circle,
  .dao-orbit > svg circle,
  .bio-viz,
  .dao-module { animation: none !important; transition: none !important; }
}

/* Browser-stable genome helix geometry (avoids CSS trigonometric dependency). */
.genome-helix span { left: var(--helix-left, 20%); right: var(--helix-right, 20%); transform: rotate(var(--helix-rotate, 0deg)); }
.genome-helix span:nth-child(1)  { --helix-left:18%; --helix-right:28%; --helix-rotate:-10deg; }
.genome-helix span:nth-child(2)  { --helix-left:21%; --helix-right:23%; --helix-rotate:-6deg; }
.genome-helix span:nth-child(3)  { --helix-left:25%; --helix-right:18%; --helix-rotate:0deg; }
.genome-helix span:nth-child(4)  { --helix-left:29%; --helix-right:15%; --helix-rotate:7deg; }
.genome-helix span:nth-child(5)  { --helix-left:27%; --helix-right:17%; --helix-rotate:11deg; }
.genome-helix span:nth-child(6)  { --helix-left:22%; --helix-right:22%; --helix-rotate:7deg; }
.genome-helix span:nth-child(7)  { --helix-left:17%; --helix-right:27%; --helix-rotate:0deg; }
.genome-helix span:nth-child(8)  { --helix-left:15%; --helix-right:29%; --helix-rotate:-8deg; }
.genome-helix span:nth-child(9)  { --helix-left:18%; --helix-right:26%; --helix-rotate:-11deg; }
.genome-helix span:nth-child(10) { --helix-left:23%; --helix-right:21%; --helix-rotate:-6deg; }
.genome-helix span:nth-child(11) { --helix-left:28%; --helix-right:16%; --helix-rotate:2deg; }
.genome-helix span:nth-child(12) { --helix-left:29%; --helix-right:15%; --helix-rotate:9deg; }
.genome-helix span:nth-child(13) { --helix-left:24%; --helix-right:20%; --helix-rotate:11deg; }
.genome-helix span:nth-child(14) { --helix-left:19%; --helix-right:25%; --helix-rotate:4deg; }


/* ==========================================================
   GenesisL1 v10.1 — refined opening narrative and capability rail
   ========================================================== */
.hero-intro {
  max-width: 61ch;
  font-size: clamp(16px, 1.06vw, 19px);
  line-height: 1.62;
  letter-spacing: -.009em;
}
.hero-metrics > div {
  min-height: 124px;
  gap: 16px;
  transition: background-color .24s ease;
}
.hero-metrics > div:hover { background: rgba(var(--blue-rgb), .022); }
.hero-metrics strong.hero-capability {
  display: block;
  font-size: clamp(17px, 1.24vw, 23px);
  line-height: 1.12;
  letter-spacing: -.018em;
  text-wrap: balance;
}
.hero-metrics strong.hero-capability small {
  display: block;
  max-width: 27ch;
  margin-top: 10px;
  color: var(--muted);
  font: 500 8px/1.45 var(--mono);
  letter-spacing: .025em;
  text-transform: uppercase;
}
@media (max-width: 1280px) {
  .hero-metrics > div { min-height: 138px; }
  .hero-metrics strong.hero-capability { font-size: clamp(17px, 1.55vw, 20px); }
}
@media (max-width: 720px) {
  .hero-intro { max-width: 34em; font-size: 16px; line-height: 1.62; }
  .hero-metrics > div { min-height: 134px; padding: 18px 16px; }
  .hero-metrics strong.hero-capability { font-size: 18px; line-height: 1.12; }
  .hero-metrics strong.hero-capability small { max-width: 24ch; font-size: 7px; line-height: 1.5; }
}

/* ==========================================================
   GenesisL1 v11 — focused homepage, refined opening and
   compact ecosystem / institution bridge
   ========================================================== */

.hero-intro {
  max-width: 58ch;
  font-size: clamp(16px, 1.02vw, 18.5px);
  line-height: 1.62;
  color: #394657;
}
.hero-bottom {
  margin-top: clamp(52px, 7vh, 88px);
  padding: 0 0 clamp(42px, 4.4vw, 62px);
  align-items: end;
}
.hero-capability-rail {
  position: relative;
  z-index: 3;
  margin: 0 calc(clamp(28px, 4.8vw, 80px) * -1);
  padding: 18px clamp(28px, 4.8vw, 80px) 23px;
  border-top: 1px solid var(--line);
  background: linear-gradient(180deg, rgba(248,251,255,.38), rgba(255,255,255,.82));
}
.hero-capability-rail-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  color: var(--muted);
  font: 500 8px/1 var(--mono);
  letter-spacing: .11em;
  text-transform: uppercase;
}
.hero-capability-rail-head b {
  color: rgba(7,17,29,.48);
  font-weight: 500;
}
.hero-capability-track {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(14px, 1.5vw, 26px);
  margin-top: 18px;
}
.hero-capability-track::before {
  content: "";
  position: absolute;
  left: 7px;
  right: 7px;
  top: 6px;
  height: 1px;
  background: linear-gradient(90deg, rgba(var(--blue-rgb),.28), rgba(var(--blue-rgb),.08));
}
.hero-capability-item {
  position: relative;
  min-width: 0;
  padding-top: 23px;
}
.hero-capability-item::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 2px;
  left: 0;
  width: 9px;
  height: 9px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: var(--blue);
  box-shadow: 0 0 0 1px rgba(var(--blue-rgb),.28), 0 0 18px rgba(var(--blue-rgb),.18);
}
.hero-capability-item > span {
  display: block;
  margin-bottom: 6px;
  color: var(--blue);
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
}
.hero-capability-item strong {
  display: block;
  color: var(--ink);
  font-family: var(--display);
  font-size: clamp(18px, 1.22vw, 23px);
  font-weight: 500;
  letter-spacing: -.025em;
  line-height: 1.04;
}
.hero-capability-item small {
  display: block;
  margin-top: 7px;
  color: var(--muted);
  font: 500 8px/1.42 var(--mono);
  letter-spacing: .025em;
  text-transform: uppercase;
}
.focused-home .hero-copy,
.focused-home .hero-viewer-wrap,
.overview-page-body .hero-copy,
.overview-page-body .hero-viewer-wrap { min-height: 830px; }
.focused-home .whitepaper-band { border-bottom: 1px solid var(--line); }

/* Focused homepage: compact bridge between technology, applications and institutions. */
.ecosystem-bridge {
  position: relative;
  padding-top: clamp(86px, 8vw, 140px);
  padding-bottom: clamp(86px, 8vw, 140px);
  overflow: hidden;
}
.ecosystem-bridge::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 18% 42%, rgba(var(--blue-rgb),.045), transparent 30%),
    radial-gradient(circle at 83% 67%, rgba(var(--cyan-rgb),.05), transparent 28%);
}
.ecosystem-bridge > * { position: relative; z-index: 1; }
.ecosystem-bridge-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(330px, .72fr);
  gap: clamp(54px, 8vw, 128px);
  align-items: end;
  margin-top: clamp(58px, 6.6vw, 100px);
}
.ecosystem-bridge-copy .large-copy {
  margin: 0;
  color: #253244;
  font-size: clamp(20px, 1.6vw, 28px);
  line-height: 1.42;
  letter-spacing: -.022em;
}
.ecosystem-bridge-links {
  display: flex;
  flex-wrap: wrap;
  gap: 24px 34px;
  margin-top: 32px;
}
.ecosystem-bridge-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(360px, .82fr);
  min-height: 640px;
  margin-top: clamp(54px, 6vw, 92px);
  border: 1px solid var(--line);
  background: rgba(255,255,255,.72);
  box-shadow: 0 30px 85px rgba(16,32,54,.055);
}
.ecosystem-bridge-map {
  position: relative;
  min-height: 640px;
  overflow: hidden;
  border-right: 1px solid var(--line);
  background:
    linear-gradient(rgba(255,255,255,.65), rgba(250,252,255,.9)),
    radial-gradient(circle at center, rgba(var(--blue-rgb),.08), transparent 56%);
}
.ecosystem-bridge-map::after {
  content: "";
  position: absolute;
  inset: 12%;
  border: 1px solid rgba(var(--blue-rgb),.065);
  border-radius: 50%;
  pointer-events: none;
}
.ecosystem-bridge-lines {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  color: var(--blue);
}
.ecosystem-bridge-lines circle,
.ecosystem-bridge-lines .bridge-path {
  fill: none;
  stroke: rgba(var(--blue-rgb),.16);
  stroke-width: 1;
}
.bridge-grid-lines path {
  fill: none;
  stroke: rgba(7,17,29,.042);
  stroke-width: 1;
}
.bridge-pulse-path {
  fill: none;
  stroke: rgba(var(--blue-rgb),.7);
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-dasharray: 3 15;
  animation: bridgeSignal 7.5s linear infinite;
}
.ecosystem-bridge-core {
  position: absolute;
  left: 50%;
  top: 48.5%;
  width: 198px;
  height: 198px;
  transform: translate(-50%,-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(7,17,29,.15);
  border-radius: 50%;
  background: rgba(255,255,255,.94);
  box-shadow: 0 24px 70px rgba(13,35,66,.12), 0 0 0 20px rgba(255,255,255,.38);
}
.ecosystem-bridge-core img { width: 76px; height: 76px; }
.ecosystem-bridge-core strong {
  margin-top: 8px;
  font: 600 13px/1 var(--display);
  letter-spacing: .01em;
}
.ecosystem-bridge-core span {
  margin-top: 7px;
  color: var(--muted);
  font: 500 7px/1 var(--mono);
  letter-spacing: .1em;
}
.ecosystem-bridge-node {
  position: absolute;
  width: 184px;
  padding: 14px 16px 15px;
  border: 1px solid rgba(7,17,29,.13);
  background: rgba(255,255,255,.92);
  box-shadow: 0 15px 42px rgba(16,32,54,.065);
  backdrop-filter: blur(10px);
}
.ecosystem-bridge-node > span {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--blue);
  font: 500 7px/1 var(--mono);
  letter-spacing: .1em;
}
.ecosystem-bridge-node > span i {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--blue);
  box-shadow: 0 0 0 4px rgba(var(--blue-rgb),.08);
}
.ecosystem-bridge-node strong {
  display: block;
  margin-top: 9px;
  font-family: var(--display);
  font-size: 23px;
  font-weight: 500;
  letter-spacing: -.028em;
}
.ecosystem-bridge-node small {
  display: block;
  margin-top: 5px;
  color: var(--muted);
  font: 500 7px/1.35 var(--mono);
  letter-spacing: .055em;
}
.bridge-node-1 { left: 5.2%; top: 8%; }
.bridge-node-2 { right: 5.2%; top: 8%; }
.bridge-node-3 { right: 5.2%; bottom: 18%; }
.bridge-node-4 { left: 5.2%; bottom: 18%; }
.bridge-node-planned { border-style: dashed; background: rgba(250,252,255,.94); }
.bridge-node-planned > span { color: #627085; }
.bridge-node-planned > span i { background: #7c8797; box-shadow: 0 0 0 4px rgba(90,105,125,.08); }
.ecosystem-bridge-pool {
  position: absolute;
  left: 50%;
  bottom: 3.2%;
  width: min(62%, 430px);
  transform: translateX(-50%);
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 5px 18px;
  align-items: center;
  padding: 13px 18px;
  border-top: 1px solid rgba(var(--blue-rgb),.25);
  border-bottom: 1px solid rgba(var(--blue-rgb),.14);
  background: rgba(249,252,255,.9);
}
.ecosystem-bridge-pool span {
  grid-row: 1 / 3;
  color: var(--blue);
  font: 500 7px/1.3 var(--mono);
  letter-spacing: .1em;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}
.ecosystem-bridge-pool b {
  font-family: var(--display);
  font-size: 15px;
  font-weight: 500;
  letter-spacing: -.01em;
}
.ecosystem-bridge-pool small {
  color: var(--muted);
  font: 500 7px/1.35 var(--mono);
  letter-spacing: .04em;
}
.ecosystem-bridge-cards {
  display: grid;
  grid-template-rows: repeat(3, 1fr);
}
.ecosystem-bridge-cards article {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(28px, 3.4vw, 52px);
  border-bottom: 1px solid var(--line);
  transition: background-color .25s ease;
}
.ecosystem-bridge-cards article:last-child { border-bottom: 0; }
.ecosystem-bridge-cards article:hover { background: rgba(var(--blue-rgb),.022); }
.ecosystem-bridge-cards article > div {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  color: var(--blue);
  font: 500 8px/1 var(--mono);
  letter-spacing: .09em;
}
.ecosystem-bridge-cards article > div b {
  color: var(--muted);
  font-weight: 500;
}
.ecosystem-bridge-cards h3 {
  max-width: 18ch;
  margin: 20px 0 0;
  font-family: var(--display);
  font-size: clamp(24px, 2vw, 34px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -.035em;
}
.ecosystem-bridge-cards p {
  max-width: 50ch;
  margin: 16px 0 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.62;
}
.ecosystem-bridge-status {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 1px solid var(--line);
  border-top: 0;
}
.ecosystem-bridge-status > div {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 22px;
  align-items: center;
  min-height: 84px;
  padding: 20px clamp(24px, 3vw, 44px);
}
.ecosystem-bridge-status > div + div { border-left: 1px solid var(--line); }
.ecosystem-bridge-status span {
  color: var(--blue);
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
  white-space: nowrap;
}
.ecosystem-bridge-status p {
  margin: 0;
  color: #425064;
  font-size: 13px;
  line-height: 1.45;
}
@keyframes bridgeSignal { to { stroke-dashoffset: -180; } }

@media (max-width: 1280px) {
  .hero-capability-item small { font-size: 7px; }
  .ecosystem-bridge-layout { grid-template-columns: minmax(0, 1.05fr) minmax(330px, .95fr); }
  .ecosystem-bridge-node { width: 164px; }
  .bridge-node-1, .bridge-node-4 { left: 3.5%; }
  .bridge-node-2, .bridge-node-3 { right: 3.5%; }
  .ecosystem-bridge-core { width: 176px; height: 176px; }
}

@media (max-width: 1024px) {
  .hero-capability-rail { margin: 0 -20px; padding-left: 20px; padding-right: 20px; }
  .hero-capability-track { gap: 12px; }
  .hero-capability-item strong { font-size: 19px; }
  .ecosystem-bridge-intro { grid-template-columns: 1fr; gap: 32px; }
  .ecosystem-bridge-layout { grid-template-columns: 1fr; }
  .ecosystem-bridge-map { min-height: 610px; border-right: 0; border-bottom: 1px solid var(--line); }
  .ecosystem-bridge-cards { grid-template-columns: repeat(3, 1fr); grid-template-rows: none; }
  .ecosystem-bridge-cards article { justify-content: flex-start; border-bottom: 0; border-right: 1px solid var(--line); }
  .ecosystem-bridge-cards article:last-child { border-right: 0; }
  .ecosystem-bridge-cards h3 { font-size: 25px; }
}

@media (max-width: 720px) {
  .hero-bottom { margin-top: 46px; padding-bottom: 36px; }
  .hero-capability-rail-head b { display: none; }
  .hero-capability-track {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px 24px;
  }
  .hero-capability-track::before { display: none; }
  .hero-capability-item {
    padding: 13px 0 0 16px;
    border-left: 1px solid rgba(var(--blue-rgb),.18);
  }
  .hero-capability-item::before { top: 0; left: -5px; }
  .hero-capability-item strong { font-size: 20px; }
  .hero-capability-item small { max-width: 20ch; }
  .focused-home .hero-copy,
  .focused-home .hero-viewer-wrap,
  .overview-page-body .hero-copy,
  .overview-page-body .hero-viewer-wrap { min-height: auto; }
  .ecosystem-bridge { padding-top: 76px; padding-bottom: 76px; }
  .ecosystem-bridge-intro { margin-top: 42px; }
  .ecosystem-bridge-copy .large-copy { font-size: 19px; }
  .ecosystem-bridge-layout { margin-top: 42px; }
  .ecosystem-bridge-map { min-height: 560px; }
  .ecosystem-bridge-lines { opacity: .82; }
  .ecosystem-bridge-core { width: 150px; height: 150px; top: 47%; }
  .ecosystem-bridge-core img { width: 60px; height: 60px; }
  .ecosystem-bridge-core strong { font-size: 11px; }
  .ecosystem-bridge-node { width: 43%; padding: 11px 12px 12px; }
  .ecosystem-bridge-node strong { font-size: 18px; }
  .bridge-node-1 { left: 2.5%; top: 7%; }
  .bridge-node-2 { right: 2.5%; top: 7%; }
  .bridge-node-3 { right: 2.5%; bottom: 21%; }
  .bridge-node-4 { left: 2.5%; bottom: 21%; }
  .ecosystem-bridge-pool { width: 88%; bottom: 3%; }
  .ecosystem-bridge-cards { grid-template-columns: 1fr; }
  .ecosystem-bridge-cards article { min-height: 250px; border-right: 0; border-bottom: 1px solid var(--line); }
  .ecosystem-bridge-cards article:last-child { border-bottom: 0; }
  .ecosystem-bridge-status { grid-template-columns: 1fr; }
  .ecosystem-bridge-status > div + div { border-left: 0; border-top: 1px solid var(--line); }
}

@media (prefers-reduced-motion: reduce) {
  .bridge-pulse-path { animation: none !important; }
}

/* ==========================================================
   GenesisL1 v11 — focused homepage and editorial capability index
   ========================================================== */

/* Hero: replace dense mini-windows with a restrained reference index. */
.hero-capability-index {
  position: relative;
  z-index: 3;
  margin: 0 calc(clamp(28px, 4.8vw, 80px) * -1);
  border-top: 1px solid var(--line-strong);
  background: rgba(255,255,255,.38);
}
.capability-index-head {
  min-height: 36px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 0 clamp(16px,1.7vw,30px);
  border-bottom: 1px solid var(--line);
  color: var(--muted);
  font: 500 8px/1 var(--mono);
  letter-spacing: .11em;
  text-transform: uppercase;
}
.capability-index-head span:last-child { color: rgba(7,17,29,.42); }
.capability-index-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.capability-index-item {
  position: relative;
  min-width: 0;
  min-height: 88px;
  padding: 17px clamp(15px,1.45vw,24px) 16px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto;
  column-gap: 12px;
  align-content: center;
  transition: background-color .24s ease, color .24s ease;
}
.capability-index-item:nth-child(3n) { border-right: 0; }
.capability-index-item:nth-last-child(-n+3) { border-bottom: 0; }
.capability-index-item > span {
  grid-row: 1 / 3;
  align-self: start;
  color: var(--blue);
  font: 500 8px/1.3 var(--mono);
  letter-spacing: .08em;
}
.capability-index-item strong {
  min-width: 0;
  color: var(--ink);
  font-family: var(--display);
  font-size: clamp(15px,1.08vw,19px);
  line-height: 1.08;
  letter-spacing: -.017em;
  font-weight: 500;
}
.capability-index-item small {
  min-width: 0;
  margin-top: 7px;
  color: var(--muted);
  font: 500 7.5px/1.35 var(--mono);
  letter-spacing: .025em;
  text-transform: uppercase;
}
.capability-index-item:hover { background: rgba(var(--blue-rgb),.035); }

.home-short .hero-copy,
.home-short .hero-viewer-wrap { min-height: 790px; }
.home-short .hero-title { margin-top: clamp(54px,6.2vh,82px); }
.home-short .hero-bottom { padding: 48px 0 42px; gap: 34px; }
.home-short .hero-intro { max-width: 62ch; font-size: clamp(15.5px,1.02vw,18.5px); line-height: 1.62; }
.home-short .hero-slogan { font-size: clamp(32px,2.45vw,46px); }
.home-short .viewer-canvas-wrap { height: clamp(390px,39vw,590px); }

/* A compact marker at the top of the long-form overview. */
.overview-marker {
  width: min(100%,var(--max));
  margin: 0 auto;
  min-height: 92px;
  padding: 22px clamp(28px,4.8vw,80px);
  border: 1px solid var(--line);
  border-top: 0;
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 30px;
  background: rgba(255,255,255,.72);
}
.overview-marker span { color: var(--blue); font: 500 8px/1 var(--mono); letter-spacing:.11em; }
.overview-marker p { margin:0; color:var(--muted); font-size:14px; }
.overview-marker a { font-size:13px; font-weight:700; border-bottom:1px solid currentColor; padding-bottom:3px; }

/* Shared composition for the shorter homepage chapters. */
.home-brief {
  position: relative;
  background:
    radial-gradient(circle at 92% 10%, rgba(var(--blue-rgb),.035), transparent 25%),
    rgba(255,255,255,.94);
}
.home-brief::before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image: linear-gradient(rgba(36,92,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(36,92,255,.025) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.45),transparent 68%);
}
.home-brief > * { position:relative; z-index:1; }
.home-brief-intro {
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  align-items:start;
  gap:clamp(55px,7vw,130px);
  padding:82px 0 88px;
}
.home-brief-copy { max-width:660px; padding-top:8px; }
.home-brief-copy p { margin:0; color:var(--muted); font-size:16px; line-height:1.68; }
.home-brief-copy p + p { margin-top:24px; }
.home-brief-copy .large-copy { color:var(--ink-2); font-size:clamp(20px,1.45vw,26px); line-height:1.42; letter-spacing:-.018em; }
.home-brief-actions {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:28px;
  margin-top:44px;
  padding-top:30px;
  border-top:1px solid var(--line);
}

/* Biology snapshot. */
.home-biology-grid { display:grid; grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr); border:1px solid var(--line-strong); }
.home-lab-panel { min-width:0; border-right:1px solid var(--line-strong); background:rgba(248,251,255,.78); }
.home-panel-head {
  min-height:54px;
  padding:0 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-bottom:1px solid var(--line);
  color:var(--muted);
  font:500 8px/1 var(--mono);
  letter-spacing:.08em;
}
.home-panel-head span { display:inline-flex; align-items:center; gap:8px; }
.home-panel-head span i { width:6px; height:6px; border-radius:50%; background:var(--blue); box-shadow:0 0 0 5px rgba(var(--blue-rgb),.08); }
.home-panel-head b { font-weight:500; color:rgba(7,17,29,.45); }
.home-bio-flow {
  position:relative;
  min-height:440px;
  padding:76px 42px 66px;
  display:grid;
  grid-template-columns:minmax(110px,1fr) 36px minmax(110px,1fr) 36px minmax(110px,1fr) 36px minmax(110px,1fr);
  align-items:center;
  gap:0;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 50%,rgba(var(--blue-rgb),.075),transparent 35%),
    linear-gradient(rgba(7,17,29,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(7,17,29,.035) 1px,transparent 1px);
  background-size:auto,48px 48px,48px 48px;
}
.home-bio-flow::before,
.home-bio-flow::after { content:""; position:absolute; left:50%; top:50%; border:1px solid rgba(var(--blue-rgb),.12); border-radius:50%; transform:translate(-50%,-50%); }
.home-bio-flow::before { width:420px; height:420px; }
.home-bio-flow::after { width:290px; height:290px; border-style:dashed; }
.home-bio-node { position:relative; z-index:2; min-width:0; text-align:center; display:flex; flex-direction:column; align-items:center; }
.home-bio-node > span { align-self:flex-start; color:var(--blue); font:500 8px/1 var(--mono); }
.home-bio-node strong { margin-top:19px; font-family:var(--display); font-size:clamp(20px,1.45vw,27px); font-weight:500; letter-spacing:-.025em; }
.home-bio-node small { margin-top:7px; color:var(--muted); font:500 7px/1.3 var(--mono); letter-spacing:.06em; }
.home-flow-line { position:relative; z-index:2; height:1px; background:linear-gradient(90deg,rgba(var(--blue-rgb),.25),var(--blue)); }
.home-flow-line::after { content:""; position:absolute; right:-1px; top:-3px; width:7px; height:7px; border-top:1px solid var(--blue); border-right:1px solid var(--blue); transform:rotate(45deg); }
.home-bio-glyph { position:relative; width:88px; height:88px; margin-top:28px; border:1px solid rgba(var(--blue-rgb),.22); border-radius:50%; background:rgba(255,255,255,.82); box-shadow:0 17px 44px rgba(7,17,29,.07); }
.molecule-glyph i { position:absolute; width:12px; height:12px; border:2px solid var(--blue); border-radius:50%; background:#fff; }
.molecule-glyph i:nth-child(1){left:19px;top:42px}.molecule-glyph i:nth-child(2){left:38px;top:20px}.molecule-glyph i:nth-child(3){right:15px;top:38px}.molecule-glyph i:nth-child(4){left:43px;bottom:13px}
.molecule-glyph b { position:absolute; height:1px; background:rgba(var(--blue-rgb),.65); transform-origin:left center; }
.molecule-glyph b:nth-of-type(1){width:31px;left:28px;top:47px;transform:rotate(-48deg)}.molecule-glyph b:nth-of-type(2){width:27px;left:49px;top:30px;transform:rotate(35deg)}.molecule-glyph b:nth-of-type(3){width:28px;left:54px;top:48px;transform:rotate(119deg)}
.sequence-glyph i { position:absolute; left:20px; right:20px; height:1px; background:var(--blue); transform-origin:center; }
.sequence-glyph i:nth-child(1){top:23px;transform:rotate(18deg)}.sequence-glyph i:nth-child(2){top:34px;transform:rotate(-18deg)}.sequence-glyph i:nth-child(3){top:44px;transform:rotate(18deg)}.sequence-glyph i:nth-child(4){top:55px;transform:rotate(-18deg)}.sequence-glyph i:nth-child(5){top:65px;transform:rotate(18deg)}
.sequence-glyph::before,.sequence-glyph::after{content:"";position:absolute;top:18px;bottom:18px;width:1px;background:rgba(var(--blue-rgb),.5)}.sequence-glyph::before{left:24px}.sequence-glyph::after{right:24px}
.model-glyph i { position:absolute; width:8px; height:8px; border-radius:50%; background:var(--blue); box-shadow:0 0 0 4px rgba(var(--blue-rgb),.08); }
.model-glyph i:nth-child(1){left:40px;top:18px}.model-glyph i:nth-child(2){left:21px;top:48px}.model-glyph i:nth-child(3){right:21px;top:48px}.model-glyph i:nth-child(4){left:40px;bottom:13px}
.model-glyph::before,.model-glyph::after{content:"";position:absolute;left:28px;top:42px;width:34px;height:1px;background:rgba(var(--blue-rgb),.62)}.model-glyph::before{transform:rotate(56deg)}.model-glyph::after{transform:rotate(-56deg)}
.result-glyph b { position:absolute; left:50%; top:43%; transform:translate(-50%,-50%); color:var(--blue); font-family:var(--display); font-size:30px; font-weight:500; }
.result-glyph i { position:absolute; left:22px; right:22px; bottom:19px; height:1px; background:var(--blue); box-shadow:0 -8px 0 rgba(var(--blue-rgb),.35),0 -16px 0 rgba(var(--blue-rgb),.15); }
.home-panel-foot { min-height:76px; border-top:1px solid var(--line); display:grid; grid-template-columns:auto 1fr auto 1fr auto 1fr; align-items:center; gap:10px 16px; padding:14px 20px; }
.home-panel-foot span { color:var(--blue); font:500 7px/1 var(--mono); letter-spacing:.08em; }
.home-panel-foot strong { font-size:12px; font-weight:600; }
.home-brief-list { display:grid; grid-template-rows:repeat(4,1fr); }
.home-brief-list article { min-height:0; padding:24px 28px; border-bottom:1px solid var(--line); display:flex; flex-direction:column; justify-content:center; }
.home-brief-list article:last-child { border-bottom:0; }
.home-brief-list span { color:var(--blue); font:500 7px/1 var(--mono); letter-spacing:.09em; }
.home-brief-list h3 { margin:12px 0 8px; font-family:var(--display); font-size:clamp(20px,1.45vw,27px); line-height:1.05; letter-spacing:-.024em; font-weight:500; }
.home-brief-list p { margin:0; color:var(--muted); font-size:13px; line-height:1.55; }

/* Compact verifiable-AI chapter. */
.home-ai-layout { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr); border:1px solid var(--line-strong); }
.home-ai-runtime { min-width:0; border-right:1px solid var(--line-strong); background:rgba(248,251,255,.82); }
.home-forest-visual { min-height:430px; padding:28px; display:flex; align-items:center; background:radial-gradient(circle at 50% 44%,rgba(var(--blue-rgb),.09),transparent 42%); overflow:hidden; }
.home-forest-visual svg { width:100%; height:auto; overflow:visible; }
.home-grid-lines path { fill:none; stroke:rgba(7,17,29,.045); stroke-width:1; }
.home-tree path { fill:none; stroke:rgba(var(--blue-rgb),.55); stroke-width:1.5; }
.home-tree circle { fill:#fff; stroke:var(--blue); stroke-width:1.5; filter:drop-shadow(0 5px 10px rgba(var(--blue-rgb),.14)); }
.home-tree-a,.home-tree-c { opacity:.55; }
.home-signal-path { fill:none; stroke:var(--blue); stroke-width:2; stroke-dasharray:8 10; opacity:.55; }
.home-signal-dot { fill:var(--blue); filter:drop-shadow(0 0 9px rgba(var(--blue-rgb),.7)); animation:homeSignal 5s ease-in-out infinite; }
@keyframes homeSignal { 0%{transform:translate(0,0)} 50%{transform:translate(326px,0)} 100%{transform:translate(652px,0)} }
.home-runtime-readout { min-height:86px; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }
.home-runtime-readout div { padding:16px 18px; border-right:1px solid var(--line); display:flex; flex-direction:column; gap:8px; }
.home-runtime-readout div:last-child { border-right:0; }
.home-runtime-readout span { color:var(--muted); font:500 7px/1 var(--mono); letter-spacing:.08em; }
.home-runtime-readout strong { font-size:12px; font-weight:600; }
.home-ai-pipeline { display:grid; grid-template-rows:1fr 24px 1fr 24px 1fr 24px 1fr; padding:22px; background:#fff; }
.home-ai-step { padding:18px; border:1px solid var(--line); display:grid; grid-template-columns:auto 1fr; column-gap:14px; align-content:center; }
.home-ai-step span { grid-row:1/3; color:var(--blue); font:500 8px/1 var(--mono); }
.home-ai-step strong { font-family:var(--display); font-size:21px; line-height:1; letter-spacing:-.02em; font-weight:500; }
.home-ai-step small { margin-top:6px; color:var(--muted); font:500 7px/1.35 var(--mono); text-transform:uppercase; }
.home-ai-pipeline > i { position:relative; width:1px; height:24px; margin:auto; background:rgba(var(--blue-rgb),.28); }
.home-ai-pipeline > i::after { content:""; position:absolute; left:-3px; bottom:0; width:7px; height:7px; border-right:1px solid var(--blue); border-bottom:1px solid var(--blue); transform:rotate(45deg); }
.home-proof-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:24px; border:1px solid var(--line-strong); }
.home-proof-grid article { min-height:235px; padding:28px; border-right:1px solid var(--line); }
.home-proof-grid article:last-child { border-right:0; }
.home-proof-grid span { color:var(--blue); font:500 7px/1 var(--mono); letter-spacing:.09em; }
.home-proof-grid h3 { margin:48px 0 14px; font-family:var(--display); font-size:clamp(24px,1.7vw,32px); line-height:1.02; letter-spacing:-.025em; font-weight:500; }
.home-proof-grid p { margin:0; color:var(--muted); font-size:14px; line-height:1.55; }

/* Architecture + confidential IP. */
.home-stack-grid { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--line-strong); }
.home-stack-grid article { min-height:330px; padding:24px; border-right:1px solid var(--line); display:flex; flex-direction:column; }
.home-stack-grid article:last-child { border-right:0; }
.home-stack-grid article > span { color:var(--blue); font:500 7px/1 var(--mono); letter-spacing:.09em; }
.home-stack-grid h3 { margin:36px 0 12px; font-family:var(--display); font-size:clamp(24px,1.65vw,31px); line-height:1.03; letter-spacing:-.025em; font-weight:500; }
.home-stack-grid p { margin:0; color:var(--muted); font-size:14px; line-height:1.55; }
.home-stack-icon { position:relative; width:96px; height:96px; margin-top:auto; border:1px solid rgba(var(--blue-rgb),.2); background:rgba(248,251,255,.75); }
.stack-icon-data i { position:absolute; width:12px; height:12px; border:2px solid var(--blue); border-radius:50%; }
.stack-icon-data i:nth-child(1){left:17px;top:47px}.stack-icon-data i:nth-child(2){left:43px;top:22px}.stack-icon-data i:nth-child(3){right:16px;bottom:19px}
.stack-icon-data::before,.stack-icon-data::after{content:"";position:absolute;height:1px;background:var(--blue);transform-origin:left}.stack-icon-data::before{width:38px;left:27px;top:49px;transform:rotate(-43deg)}.stack-icon-data::after{width:37px;left:52px;top:32px;transform:rotate(53deg)}
.stack-icon-compute i { position:absolute; width:9px; height:9px; border-radius:50%; background:var(--blue); }
.stack-icon-compute i:nth-child(1){left:44px;top:16px}.stack-icon-compute i:nth-child(2){left:19px;top:43px}.stack-icon-compute i:nth-child(3){right:19px;top:43px}.stack-icon-compute i:nth-child(4){left:44px;bottom:16px}
.stack-icon-compute::before,.stack-icon-compute::after{content:"";position:absolute;left:25px;top:47px;width:46px;height:1px;background:rgba(var(--blue-rgb),.62)}.stack-icon-compute::before{transform:rotate(48deg)}.stack-icon-compute::after{transform:rotate(-48deg)}
.stack-icon-lock i { position:absolute; left:30px; top:40px; width:36px; height:35px; border:2px solid var(--blue); }
.stack-icon-lock b { position:absolute; left:37px; top:18px; width:22px; height:28px; border:2px solid var(--blue); border-bottom:0; border-radius:14px 14px 0 0; }
.stack-icon-lock::after { content:""; position:absolute; left:46px; top:53px; width:5px; height:12px; background:var(--blue); border-radius:4px; }
.stack-icon-settle i { position:absolute; left:19px; right:19px; height:1px; background:var(--blue); }
.stack-icon-settle i:nth-child(1){top:28px}.stack-icon-settle i:nth-child(2){top:48px}.stack-icon-settle i:nth-child(3){top:68px}
.stack-icon-settle::after { content:"↔"; position:absolute; right:10px; top:34px; color:var(--blue); font:500 22px/1 var(--mono); }
.home-cip-callout { margin-top:24px; display:grid; grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr); border:1px solid var(--line-strong); background:#091321; color:#fff; }
.home-cip-copy { padding:46px; }
.home-cip-copy > span { display:inline-flex; align-items:center; gap:9px; color:var(--acid); font:500 8px/1 var(--mono); letter-spacing:.1em; }
.home-cip-copy > span i { width:6px; height:6px; border-radius:50%; background:var(--acid); box-shadow:0 0 0 6px rgba(var(--acid-rgb),.11); }
.home-cip-copy h3 { margin:34px 0 20px; font-family:var(--display); font-size:clamp(38px,3vw,58px); line-height:.98; letter-spacing:-.033em; font-weight:400; }
.home-cip-copy p { max-width:570px; margin:0; color:rgba(255,255,255,.63); font-size:15px; line-height:1.65; }
.home-cip-flow { min-width:0; display:grid; grid-template-columns:1fr 42px 1fr 42px 1fr; align-items:center; padding:36px; border-left:1px solid rgba(255,255,255,.12); background:linear-gradient(135deg,rgba(var(--blue-rgb),.12),transparent 60%); }
.home-cip-flow div { min-height:170px; padding:22px 18px; border:1px solid rgba(255,255,255,.17); display:flex; flex-direction:column; justify-content:center; }
.home-cip-flow div span { color:var(--acid); font:500 8px/1 var(--mono); }
.home-cip-flow div strong { margin:28px 0 8px; font-family:var(--display); font-size:28px; font-weight:400; }
.home-cip-flow div small { color:rgba(255,255,255,.5); font:500 7px/1.45 var(--mono); text-transform:uppercase; }
.home-cip-flow > i { position:relative; height:1px; background:rgba(255,255,255,.28); }
.home-cip-flow > i::after { content:""; position:absolute; right:0; top:-3px; width:7px; height:7px; border-top:1px solid var(--acid); border-right:1px solid var(--acid); transform:rotate(45deg); }

/* Live protocol stack + concise DAO roadmap. */
.home-protocol-grid { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line-strong); }
.home-protocol-card { position:relative; min-height:250px; padding:24px 26px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; flex-direction:column; transition:background-color .24s ease,transform .24s ease; }
.home-protocol-card:nth-child(3n) { border-right:0; }
.home-protocol-card:nth-last-child(-n+3) { border-bottom:0; }
.home-protocol-card > span { color:var(--blue); font:500 7px/1 var(--mono); letter-spacing:.09em; }
.home-protocol-card > strong { margin:66px 0 14px; font-family:var(--display); font-size:clamp(28px,2vw,38px); line-height:1; letter-spacing:-.028em; font-weight:500; }
.home-protocol-card p { max-width:33ch; margin:0; color:var(--muted); font-size:14px; line-height:1.52; }
.home-protocol-card > b { position:absolute; right:24px; top:22px; color:var(--blue); font:500 16px/1 var(--mono); }
.home-protocol-card:hover { background:rgba(var(--blue-rgb),.035); transform:translateY(-2px); }
.home-dao-preview { margin-top:24px; padding:42px; border:1px solid var(--line-strong); display:grid; grid-template-columns:minmax(0,.75fr) minmax(480px,1.25fr); gap:36px 70px; background:linear-gradient(135deg,rgba(var(--blue-rgb),.055),rgba(255,255,255,.96) 52%); }
.home-dao-status { grid-column:1/-1; display:flex; align-items:center; gap:10px; color:var(--blue); font:500 8px/1 var(--mono); letter-spacing:.1em; }
.home-dao-status i { width:6px; height:6px; border-radius:50%; background:var(--blue); box-shadow:0 0 0 6px rgba(var(--blue-rgb),.09); }
.home-dao-heading h3 { margin:0 0 20px; font-family:var(--display); font-size:clamp(38px,3vw,58px); line-height:.98; letter-spacing:-.034em; font-weight:400; }
.home-dao-heading p { margin:0; color:var(--muted); font-size:15px; line-height:1.62; }
.home-dao-capabilities { border:1px solid var(--line); background:rgba(255,255,255,.74); }
.home-dao-capabilities div { min-height:100px; padding:20px 22px; border-bottom:1px solid var(--line); display:grid; grid-template-columns:34px 1fr; column-gap:14px; align-content:center; }
.home-dao-capabilities div:last-child { border-bottom:0; }
.home-dao-capabilities span { grid-row:1/3; color:var(--blue); font:500 8px/1 var(--mono); }
.home-dao-capabilities strong { font-family:var(--display); font-size:22px; line-height:1; font-weight:500; }
.home-dao-capabilities small { margin-top:7px; color:var(--muted); font:500 7px/1.35 var(--mono); text-transform:uppercase; }

/* Focused-home closing scale. */
.home-short .final-cta { min-height:720px; }
.home-short .final-cta h2 { font-size:clamp(72px,8.2vw,148px); }

@media (max-width:1280px) {
  .capability-index-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .capability-index-item:nth-child(3n) { border-right:1px solid var(--line); }
  .capability-index-item:nth-child(2n) { border-right:0; }
  .capability-index-item:nth-last-child(-n+3) { border-bottom:1px solid var(--line); }
  .capability-index-item:nth-last-child(-n+2) { border-bottom:0; }
  .home-short .hero-copy,.home-short .hero-viewer-wrap { min-height:820px; }
  .home-biology-grid,.home-ai-layout { grid-template-columns:1fr; }
  .home-lab-panel,.home-ai-runtime { border-right:0; border-bottom:1px solid var(--line-strong); }
  .home-brief-list { grid-template-columns:repeat(2,1fr); grid-template-rows:auto; }
  .home-brief-list article { min-height:190px; border-right:1px solid var(--line); }
  .home-brief-list article:nth-child(2n) { border-right:0; }
  .home-brief-list article:nth-last-child(-n+2) { border-bottom:0; }
  .home-ai-pipeline { grid-template-columns:1fr 24px 1fr 24px 1fr 24px 1fr; grid-template-rows:1fr; min-height:190px; }
  .home-ai-pipeline > i { width:24px; height:1px; }
  .home-ai-pipeline > i::after { left:auto; right:0; bottom:-3px; transform:rotate(-45deg); }
  .home-stack-grid { grid-template-columns:repeat(2,1fr); }
  .home-stack-grid article:nth-child(2) { border-right:0; }
  .home-stack-grid article:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .home-cip-callout { grid-template-columns:1fr; }
  .home-cip-flow { border-left:0; border-top:1px solid rgba(255,255,255,.12); }
  .home-dao-preview { grid-template-columns:1fr 1fr; gap:34px; }
}

@media (max-width:1024px) {
  .home-short .hero-copy,.home-short .hero-viewer-wrap { min-height:auto; }
  .home-short .hero-bottom { padding:52px 0 42px; }
  .home-brief-intro { grid-template-columns:1fr; gap:38px; padding:66px 0 68px; }
  .home-brief-copy { max-width:760px; padding-top:0; }
  .home-bio-flow { min-height:390px; padding-left:24px; padding-right:24px; grid-template-columns:minmax(92px,1fr) 22px minmax(92px,1fr) 22px minmax(92px,1fr) 22px minmax(92px,1fr); }
  .home-bio-glyph { width:78px; height:78px; }
  .home-proof-grid { grid-template-columns:1fr; }
  .home-proof-grid article { min-height:190px; border-right:0; border-bottom:1px solid var(--line); }
  .home-proof-grid article:last-child { border-bottom:0; }
  .home-proof-grid h3 { margin-top:36px; }
  .home-protocol-grid { grid-template-columns:repeat(2,1fr); }
  .home-protocol-card:nth-child(3n) { border-right:1px solid var(--line); }
  .home-protocol-card:nth-child(2n) { border-right:0; }
  .home-protocol-card:nth-last-child(-n+3) { border-bottom:1px solid var(--line); }
  .home-protocol-card:nth-last-child(-n+2) { border-bottom:0; }
  .home-dao-preview { grid-template-columns:1fr; }
  .overview-marker { grid-template-columns:1fr; gap:10px; }
}

@media (max-width:720px) {
  .hero-capability-index { margin:0 -20px; }
  .capability-index-head { min-height:42px; padding:0 16px; }
  .capability-index-head span:last-child { display:none; }
  .capability-index-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .capability-index-item { min-height:96px; padding:15px 14px; column-gap:9px; }
  .capability-index-item strong { font-size:16px; }
  .capability-index-item small { font-size:6.5px; line-height:1.45; }
  .home-short .hero-intro { font-size:15.5px; line-height:1.6; }
  .home-short .hero-slogan { font-size:clamp(27px,8.1vw,36px); }
  .home-brief-intro { padding:54px 0 56px; }
  .home-brief-copy .large-copy { font-size:20px; }
  .home-bio-flow { min-height:0; padding:26px 18px; grid-template-columns:1fr; gap:12px; }
  .home-bio-flow::before,.home-bio-flow::after { display:none; }
  .home-flow-line { width:1px; height:24px; margin:auto; }
  .home-flow-line::after { right:-3px; top:auto; bottom:0; transform:rotate(135deg); }
  .home-bio-node { width:100%; min-height:116px; padding:14px; border:1px solid var(--line); display:grid; grid-template-columns:30px 74px 1fr; grid-template-rows:auto auto; text-align:left; }
  .home-bio-node > span { grid-row:1/3; }
  .home-bio-glyph { grid-row:1/3; width:64px; height:64px; margin:0; }
  .home-bio-node strong { margin:10px 0 0; font-size:21px; }
  .home-bio-node small { margin-top:5px; }
  .home-panel-foot { grid-template-columns:auto 1fr; }
  .home-brief-list { grid-template-columns:1fr; }
  .home-brief-list article { min-height:190px; border-right:0; border-bottom:1px solid var(--line); }
  .home-brief-list article:nth-last-child(-n+2) { border-bottom:1px solid var(--line); }
  .home-brief-list article:last-child { border-bottom:0; }
  .home-forest-visual { min-height:300px; padding:12px; }
  .home-runtime-readout { grid-template-columns:1fr; }
  .home-runtime-readout div { border-right:0; border-bottom:1px solid var(--line); }
  .home-runtime-readout div:last-child { border-bottom:0; }
  .home-ai-pipeline { grid-template-columns:1fr; grid-template-rows:1fr 20px 1fr 20px 1fr 20px 1fr; }
  .home-ai-pipeline > i { width:1px; height:20px; }
  .home-ai-pipeline > i::after { right:-3px; bottom:0; transform:rotate(45deg); }
  .home-stack-grid { grid-template-columns:1fr; }
  .home-stack-grid article { min-height:300px; border-right:0; border-bottom:1px solid var(--line); }
  .home-stack-grid article:last-child { border-bottom:0; }
  .home-cip-copy { padding:30px 22px; }
  .home-cip-flow { grid-template-columns:1fr; gap:12px; padding:22px; }
  .home-cip-flow > i { width:1px; height:22px; margin:auto; }
  .home-cip-flow > i::after { right:-3px; top:auto; bottom:0; transform:rotate(135deg); }
  .home-cip-flow div { min-height:125px; }
  .home-protocol-grid { grid-template-columns:1fr; }
  .home-protocol-card { min-height:215px; border-right:0 !important; border-bottom:1px solid var(--line) !important; }
  .home-protocol-card:last-child { border-bottom:0 !important; }
  .home-protocol-card > strong { margin-top:48px; }
  .home-dao-preview { padding:28px 20px; }
  .home-dao-heading h3 { font-size:39px; }
  .home-brief-actions { align-items:flex-start; flex-direction:column; }
  .overview-marker { padding:22px 20px; }
  .home-short .final-cta { min-height:620px; }
}

@media (prefers-reduced-motion:reduce) {
  .home-signal-dot { animation:none !important; }
}

/* ==========================================================
   GenesisL1 v11.1 — focused-home pacing and compact protocol index
   ========================================================== */
.home-short .home-brief.section-frame {
  padding-top: clamp(74px, 6.2vw, 104px);
  padding-bottom: clamp(80px, 6.6vw, 112px);
}
.home-short .home-brief-intro {
  padding: clamp(46px, 4.7vw, 66px) 0 clamp(52px, 5.2vw, 72px);
}
.home-short .home-bio-flow { min-height: 370px; padding-top: 54px; padding-bottom: 48px; }
.home-short .home-forest-visual { min-height: 360px; }
.home-short .home-proof-grid article { min-height: 202px; padding: 24px; }
.home-short .home-proof-grid h3 { margin-top: 34px; }
.home-short .home-stack-grid article { min-height: 275px; }
.home-short .home-cip-flow div { min-height: 145px; }
.home-short .home-brief-actions { margin-top: 34px; padding-top: 26px; }
.home-short .l1-coin.section-frame {
  padding-top: clamp(78px, 6.6vw, 108px);
  padding-bottom: clamp(82px, 6.9vw, 116px);
}
.home-short .l1-asset-stage { margin-top: clamp(48px, 4.4vw, 70px); }
.home-short .l1-side-metric { min-height: 350px; }
.home-short .l1-coin-diagram { min-height: 535px; }
.home-short .l1-role-grid { margin-top: clamp(44px, 4.2vw, 66px); }
.home-short .l1-role-card { min-height: 238px; }

.home-protocol-ribbon {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--line-strong);
  background: rgba(255,255,255,.82);
}
.home-protocol-ribbon a {
  position: relative;
  min-height: 188px;
  padding: 22px 24px;
  border-right: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  transition: background-color .24s ease, transform .24s ease;
}
.home-protocol-ribbon a:last-child { border-right: 0; }
.home-protocol-ribbon a:hover { background: rgba(var(--blue-rgb),.035); transform: translateY(-2px); }
.home-protocol-ribbon a > span {
  position: absolute;
  left: 24px;
  top: 22px;
  color: var(--blue);
  font: 500 7px/1 var(--mono);
  letter-spacing: .09em;
}
.home-protocol-ribbon a > b {
  position: absolute;
  right: 22px;
  top: 20px;
  color: var(--blue);
  font: 500 15px/1 var(--mono);
}
.home-protocol-ribbon strong {
  font-family: var(--display);
  font-size: clamp(27px, 2vw, 36px);
  line-height: 1;
  letter-spacing: -.03em;
  font-weight: 500;
}
.home-protocol-ribbon small {
  margin-top: 10px;
  color: var(--muted);
  font: 500 8px/1.4 var(--mono);
  letter-spacing: .03em;
  text-transform: uppercase;
}
.home-dao-band {
  position: relative;
  margin-top: 22px;
  padding: clamp(30px, 3.3vw, 48px);
  border: 1px solid var(--line-strong);
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(260px, .52fr);
  gap: 24px 64px;
  align-items: end;
  background:
    linear-gradient(135deg, rgba(var(--blue-rgb),.055), rgba(255,255,255,.96) 55%),
    #fff;
}
.home-dao-band-status {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--blue);
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
}
.home-dao-band-status i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #7f8ca0;
  box-shadow: 0 0 0 6px rgba(90,105,125,.08);
}
.home-dao-band-copy h3 {
  max-width: 19ch;
  margin: 0;
  font-family: var(--display);
  font-size: clamp(34px, 3vw, 54px);
  line-height: .99;
  letter-spacing: -.036em;
  font-weight: 400;
}
.home-dao-band-copy p {
  max-width: 68ch;
  margin: 18px 0 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.62;
}
.home-dao-band-capabilities {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid rgba(var(--blue-rgb),.2);
  border-bottom: 1px solid rgba(var(--blue-rgb),.12);
}
.home-dao-band-capabilities span {
  min-height: 62px;
  display: grid;
  place-items: center;
  border-right: 1px solid var(--line);
  color: var(--ink-2);
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
}
.home-dao-band-capabilities span:last-child { border-right: 0; }
.home-dao-band > .text-link { justify-self: end; align-self: start; }

@media (max-width: 1024px) {
  .home-protocol-ribbon { grid-template-columns: repeat(2, 1fr); }
  .home-protocol-ribbon a { border-bottom: 1px solid var(--line); }
  .home-protocol-ribbon a:nth-child(2n) { border-right: 0; }
  .home-protocol-ribbon a:nth-last-child(-n+2) { border-bottom: 0; }
  .home-dao-band { grid-template-columns: 1fr; }
  .home-dao-band > .text-link { justify-self: start; }
}
@media (max-width: 720px) {
  .home-short .home-brief.section-frame { padding-top: 66px; padding-bottom: 72px; }
  .home-protocol-ribbon { grid-template-columns: 1fr; }
  .home-protocol-ribbon a { min-height: 158px; border-right: 0; border-bottom: 1px solid var(--line) !important; }
  .home-protocol-ribbon a:last-child { border-bottom: 0 !important; }
  .home-dao-band { padding: 28px 20px; }
  .home-dao-band-capabilities { grid-template-columns: 1fr; }
  .home-dao-band-capabilities span { min-height: 52px; border-right: 0; border-bottom: 1px solid var(--line); }
  .home-dao-band-capabilities span:last-child { border-bottom: 0; }
}

/* ==========================================================
   GenesisL1 v11 final — concise homepage refinements
   ========================================================== */
.home-biology-grid.home-biology-grid-solo {
  grid-template-columns: minmax(0, 1fr);
}
.home-biology-grid.home-biology-grid-solo .home-lab-panel {
  border-right: 0;
}
.home-biology-grid.home-biology-grid-solo .home-bio-flow {
  padding-left: clamp(34px, 5vw, 88px);
  padding-right: clamp(34px, 5vw, 88px);
}
.home-short .home-protocol-ribbon + .home-dao-band {
  margin-top: 22px;
}
.home-short .home-dao-band + .home-brief-actions {
  margin-top: 30px;
}
.overview-page-body .overview-marker + .discipline-marquee {
  border-top: 0;
}
@media (max-width: 720px) {
  .home-biology-grid.home-biology-grid-solo .home-bio-flow {
    padding-left: 18px;
    padding-right: 18px;
  }
}

/* ==========================================================
   v11.1 — general ecosystem opening
   ========================================================== */
.ecosystem-page .eco-hero-title {
  max-width: 13.5ch;
  font-size: clamp(70px, 6.55vw, 120px);
  line-height: .91;
}
.ecosystem-page .eco-hero-lead { max-width: 690px; }
.ecosystem-page .eco-orbit-node { width: 124px; min-height: 82px; }
.ecosystem-page .eco-orbit-node span { line-height: 1.25; }

.eco-stack-visual {
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at 50% 50%, rgba(var(--blue-rgb),.09), transparent 43%),
    linear-gradient(180deg,#fff,#f7faff);
}
.eco-stack-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(var(--blue-rgb),.055) 1px, transparent 1px),
    linear-gradient(90deg,rgba(var(--blue-rgb),.055) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: radial-gradient(circle at center,#000,transparent 80%);
}
.eco-stack-visual > svg {
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(92%, 640px);
  height: 92%;
  transform: translate(-50%,-50%);
  fill: none;
  stroke: rgba(var(--blue-rgb),.2);
  stroke-width: 1;
  stroke-dasharray: 4 7;
  animation: ecoOrbitDash 22s linear infinite;
}
.eco-stack-core {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 2;
  width: 132px;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  transform: translate(-50%,-50%);
  border: 1px solid rgba(7,17,29,.16);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 24px 60px rgba(7,17,29,.1), inset 0 0 0 9px #f6f8fb;
}
.eco-stack-core img { width: 62%; height: 62%; object-fit: contain; }
.eco-stack-core span {
  position: absolute;
  bottom: -29px;
  color: var(--muted);
  font: 500 7px/1 var(--mono);
  letter-spacing: .11em;
}
.eco-stack-node {
  position: absolute;
  z-index: 3;
  min-width: 82px;
  padding: 10px 12px;
  border: 1px solid rgba(7,17,29,.14);
  background: rgba(255,255,255,.95);
  color: #1b2838;
  text-align: center;
  font: 500 8px/1 var(--mono);
  letter-spacing: .09em;
  box-shadow: 0 10px 28px rgba(7,17,29,.055);
}
.eco-stack-node::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  margin-right: 7px;
  border-radius: 50%;
  background: var(--blue);
  box-shadow: 0 0 0 4px rgba(var(--blue-rgb),.08);
  vertical-align: 1px;
}
.esn-1 { left: 50%; top: 8%; transform: translateX(-50%); }
.esn-2 { right: 8%; top: 26%; }
.esn-3 { right: 8%; bottom: 22%; }
.esn-4 { left: 50%; bottom: 7%; transform: translateX(-50%); }
.esn-5 { left: 8%; bottom: 22%; }
.esn-6 { left: 8%; top: 26%; }
.eco-stack-visual > b {
  position: absolute;
  left: 24px;
  bottom: 22px;
  color: #445164;
  font: 500 8px/1 var(--mono);
  letter-spacing: .1em;
}

@media (max-width: 1180px) {
  .ecosystem-page .eco-hero-title { max-width: 12ch; font-size: clamp(66px, 8vw, 104px); }
}
@media (max-width: 720px) {
  .ecosystem-page .eco-hero-title { max-width: 11.5ch; font-size: clamp(54px, 14vw, 74px); }
  .ecosystem-page .eco-orbit-node { width: 108px; min-height: 76px; padding: 12px; }
  .eco-stack-core { width: 112px; }
  .eco-stack-node { min-width: 70px; padding: 8px 9px; font-size: 7px; }
  .esn-2,.esn-3 { right: 4%; }
  .esn-5,.esn-6 { left: 4%; }
}

/* v11.1 orbit clearance: keep the lower application node above the live caption. */
.ecosystem-page .eco-node-4 { top: 80%; }


/* ==========================================================
   GenesisL1 v12 — readability, computational ecosystem hero,
   and first-party web3 application access
   ========================================================== */
body { font-size: 17px; line-height: 1.58; }
.desktop-nav a, .header-docs { font-size: 15px; }
.brand-version { font-size: 11px; }
.eyebrow, .section-kicker, .micro-label { font-size: 11px; line-height: 1.25; }
.hero-intro { font-size: clamp(18px, 1.25vw, 22px); line-height: 1.62; }
.text-link { font-size: 15px; }
.eco-app-card p,
.eco-card-copy p,
.eco-tool-card p,
.participate-card p,
.ai-capability-card p,
.bio-capability-card p,
.dao-capability-card p,
.ecosystem-future-grid p,
.home-brief-list p,
.home-protocol-card p,
.l1-role-card p,
.l1-public-goods-metric p,
.market-use-card p,
.market-integrity p,
.pq-science-grid p,
.dao-archetypes p,
.eco-bio-panel p { font-size: 15px; line-height: 1.66; }
.eco-tool-card > b,
.participate-card b,
.ai-capability-card a,
.bio-capability-card a,
.eco-bio-panel > a { font-size: 13px; }
.eco-app-card > span,
.eco-tool-card > span,
.participate-card > span,
.home-protocol-card > span,
.home-panel-label,
.home-runtime-label,
.hero-capability-rail-head,
.eco-filter-bar button { font-size: 11px; }
.footer-brand span { font-size: 14px; line-height: 1.6; }
.footer-links a { font-size: 13px; }
.footer-legal { font-size: 12px; }
.footer-legal p { font-size: 13px; line-height: 1.65; }

/* Ecosystem opening: a general computational laboratory, not a domain-specific orbit. */
.eco-hero-v12 {
  grid-template-columns: minmax(0,.88fr) minmax(600px,1.12fr);
  gap: clamp(50px,6vw,112px);
  min-height: calc(100svh - var(--header-h));
  align-items: center;
  padding-top: clamp(58px,6vw,96px);
  padding-bottom: clamp(74px,7vw,118px);
  background:
    radial-gradient(circle at 76% 25%, rgba(var(--blue-rgb),.055), transparent 34%),
    linear-gradient(180deg,#fff 0%,#fbfcfe 100%);
}
.eco-hero-v12 .eco-hero-title {
  max-width: 11.5ch;
  margin-top: clamp(52px,6vw,88px);
  color: var(--ink);
  font-size: clamp(68px,6.35vw,112px);
  line-height: .94;
  letter-spacing: -.052em;
  font-weight: 400;
}
.eco-hero-v12 .eco-hero-title em { color: var(--ink); font-weight: 400; }
.eco-hero-v12 .eco-hero-title .eco-title-mark {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}
.eco-hero-v12 .eco-hero-title .eco-title-mark::after {
  content: "";
  position: absolute;
  left: .03em; right: .02em; bottom: .02em;
  height: 3px;
  background: linear-gradient(90deg,var(--blue),rgba(var(--blue-rgb),.13));
}
.eco-hero-v12 .eco-hero-lead {
  max-width: 720px;
  margin-top: clamp(30px,2.6vw,44px);
  color: #4b5869;
  font-size: clamp(18px,1.22vw,22px);
  line-height: 1.64;
}
.eco-hero-index {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  margin-top: 52px;
  border-top: 1px solid var(--line-strong);
  border-left: 1px solid var(--line);
}
.eco-hero-index > div {
  min-height: 92px;
  display: grid;
  grid-template-columns: auto 1fr;
  align-content: center;
  column-gap: 14px;
  padding: 17px 18px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: rgba(255,255,255,.7);
}
.eco-hero-index > div > span {
  grid-row: 1 / 3;
  color: var(--blue);
  font: 500 11px/1 var(--mono);
}
.eco-hero-index strong { font-family: var(--display); font-size: 18px; font-weight: 500; letter-spacing: -.02em; }
.eco-hero-index small { margin-top: 5px; color: var(--muted); font: 400 11px/1.45 var(--mono); }

.eco-lab-shell {
  position: relative;
  min-height: 720px;
  overflow: hidden;
  border: 1px solid var(--line-strong);
  background:
    radial-gradient(circle at 52% 44%,rgba(var(--blue-rgb),.08),transparent 40%),
    linear-gradient(180deg,#fff,#f7faff);
  box-shadow: 0 36px 110px rgba(7,17,29,.09);
}
.eco-lab-shell::before,
.eco-lab-shell::after {
  content: ""; position: absolute; z-index: 7; width: 22px; height: 22px; pointer-events: none;
}
.eco-lab-shell::before { left:-1px; top:-1px; border-left:3px solid var(--blue); border-top:3px solid var(--blue); }
.eco-lab-shell::after { right:-1px; bottom:-1px; border-right:3px solid var(--blue); border-bottom:3px solid var(--blue); }
.eco-lab-topbar {
  height: 62px; display:flex; align-items:center; justify-content:space-between; gap:20px;
  padding:0 22px; border-bottom:1px solid var(--line); background:rgba(255,255,255,.88);
  font:500 11px/1 var(--mono); letter-spacing:.09em;
}
.eco-lab-topbar b { color:var(--ink); font-weight:500; }
.eco-lab-topbar span { color:var(--muted); }
.eco-lab-live { display:inline-flex; align-items:center; gap:9px; }
.eco-lab-live i { width:7px; height:7px; border-radius:50%; background:var(--blue); box-shadow:0 0 0 5px rgba(var(--blue-rgb),.09); animation:ecoLabPulse 2.4s ease-in-out infinite; }
.eco-lab-canvas { position:relative; height:560px; overflow:hidden; }
.eco-lab-grid {
  position:absolute; inset:0; opacity:.55;
  background-image:linear-gradient(rgba(var(--blue-rgb),.05) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--blue-rgb),.05) 1px,transparent 1px);
  background-size:44px 44px; mask-image:radial-gradient(circle at center,#000,transparent 86%);
}
.eco-lab-svg { position:absolute; inset:0; width:100%; height:100%; }
.eco-lab-svg .lab-hairline { stroke:rgba(7,17,29,.16); stroke-width:1; fill:none; }
.eco-lab-svg .lab-accent { stroke:rgba(var(--blue-rgb),.52); stroke-width:1.7; fill:none; }
.eco-lab-svg .lab-flow { stroke:var(--blue); stroke-width:2.2; fill:none; stroke-linecap:round; stroke-dasharray:8 12; animation:ecoLabFlow 9s linear infinite; }
.eco-lab-svg .lab-node { fill:#fff; stroke:rgba(var(--blue-rgb),.58); stroke-width:2; }
.eco-lab-svg .lab-node-dark { fill:var(--ink); stroke:var(--ink); }
.eco-lab-svg .lab-node-pulse { transform-box:fill-box; transform-origin:center; animation:ecoLabNode 3.4s ease-in-out infinite; }
.eco-lab-svg .lab-node-pulse:nth-of-type(2n) { animation-delay:-1.4s; }
.eco-lab-svg .lab-tree { stroke:rgba(7,17,29,.47); stroke-width:1.5; fill:none; stroke-linecap:round; }
.eco-lab-svg .lab-ring { fill:none; stroke:rgba(var(--blue-rgb),.24); stroke-width:1; transform-origin:725px 292px; animation:ecoLabRotate 24s linear infinite; }
.eco-lab-svg .lab-model-box { fill:rgba(255,255,255,.93); stroke:rgba(7,17,29,.19); }
.eco-lab-label {
  position:absolute; z-index:4; display:grid; gap:5px; min-width:126px; padding:13px 14px;
  border:1px solid rgba(7,17,29,.14); background:rgba(255,255,255,.91); box-shadow:0 15px 38px rgba(7,17,29,.055);
}
.eco-lab-label span { color:var(--blue); font:500 10px/1 var(--mono); letter-spacing:.08em; }
.eco-lab-label b { font-family:var(--display); font-size:16px; font-weight:500; letter-spacing:-.02em; }
.eco-lab-label small { color:var(--muted); font:400 10px/1.35 var(--mono); }
.eco-lab-label-a { left:4%; top:10%; }
.eco-lab-label-b { left:39%; top:7%; }
.eco-lab-label-c { right:4%; top:12%; }
.eco-lab-label-d { right:5%; bottom:7%; }
.eco-lab-spine {
  position:absolute; left:50%; top:50%; z-index:5; width:126px; aspect-ratio:1; transform:translate(-50%,-50%);
  display:grid; place-items:center; border:1px solid rgba(7,17,29,.18); border-radius:50%; background:#fff;
  box-shadow:0 24px 64px rgba(7,17,29,.12),inset 0 0 0 10px #f6f9fd;
}
.eco-lab-spine img { width:68%; height:68%; }
.eco-lab-spine span { position:absolute; bottom:-36px; white-space:nowrap; color:var(--muted); font:500 9px/1 var(--mono); letter-spacing:.09em; }
.eco-lab-readout {
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); min-height:97px; border-top:1px solid var(--line);
}
.eco-lab-readout > div { display:grid; align-content:center; gap:7px; padding:14px 17px; border-right:1px solid var(--line); }
.eco-lab-readout > div:last-child { border-right:0; }
.eco-lab-readout span { color:var(--muted); font:500 10px/1 var(--mono); letter-spacing:.08em; text-transform:uppercase; }
.eco-lab-readout strong { font-family:var(--display); font-size:16px; font-weight:500; letter-spacing:-.02em; }
@keyframes ecoLabFlow { to { stroke-dashoffset:-220; } }
@keyframes ecoLabRotate { to { transform:rotate(360deg); } }
@keyframes ecoLabPulse { 50% { transform:scale(1.18); box-shadow:0 0 0 9px rgba(var(--blue-rgb),0); } }
@keyframes ecoLabNode { 50% { transform:scale(1.16); filter:drop-shadow(0 0 7px rgba(var(--blue-rgb),.35)); } }

/* First-party static web3 applications. */
.participate-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.participate-card.network-app-card { min-height: 290px; }
.network-app-card .network-app-icon {
  width:48px; height:48px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.24);
  border-radius:50%; color:#fff; font:500 11px/1 var(--mono); letter-spacing:.06em; background:rgba(255,255,255,.06);
}
.network-app-card h3 { margin-top:28px; }
.network-app-card.is-primary { background:linear-gradient(145deg,rgba(36,92,255,.22),rgba(255,255,255,.035)); }
.network-app-card .app-state { display:inline-flex; align-items:center; gap:8px; margin-top:auto; color:#b8d0ff; font:500 10px/1 var(--mono); letter-spacing:.08em; }
.network-app-card .app-state::before { content:""; width:6px; height:6px; border-radius:50%; background:#76a8ff; box-shadow:0 0 0 5px rgba(118,168,255,.1); }

@media (max-width: 1260px) {
  .eco-hero-v12 { grid-template-columns:1fr; }
  .eco-hero-v12 .eco-hero-title { max-width:12ch; }
  .eco-lab-shell { min-height:680px; }
}
@media (max-width: 980px) {
  .participate-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .eco-lab-label { min-width:112px; }
}
@media (max-width: 720px) {
  body { font-size:16px; }
  .eco-hero-v12 { padding-top:58px; padding-bottom:76px; }
  .eco-hero-v12 .eco-hero-title { max-width:11ch; font-size:clamp(54px,14vw,76px); }
  .eco-hero-v12 .eco-hero-lead { font-size:17px; }
  .eco-hero-index { grid-template-columns:1fr; }
  .eco-lab-shell { min-height:590px; }
  .eco-lab-canvas { height:460px; }
  .eco-lab-label { min-width:96px; padding:10px; }
  .eco-lab-label b { font-size:13px; }
  .eco-lab-label small { display:none; }
  .eco-lab-label-a { left:3%; top:9%; }
  .eco-lab-label-b { left:35%; top:5%; }
  .eco-lab-label-c { right:3%; top:10%; }
  .eco-lab-label-d { right:3%; bottom:5%; }
  .eco-lab-spine { width:102px; }
  .eco-lab-readout { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .eco-lab-readout > div:nth-child(2) { border-right:0; }
  .eco-lab-readout > div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .participate-grid { grid-template-columns:1fr; }
}
@media (max-width: 480px) {
  .eco-lab-shell { min-height:540px; }
  .eco-lab-canvas { height:415px; }
  .eco-lab-topbar { padding:0 14px; font-size:9px; }
  .eco-lab-label-b { display:none; }
  .eco-lab-label { min-width:84px; }
  .eco-lab-label span { font-size:8px; }
  .eco-lab-label b { font-size:12px; }
  .eco-lab-readout strong { font-size:14px; }
}
@media (prefers-reduced-motion: reduce) {
  .eco-lab-svg .lab-flow,.eco-lab-svg .lab-node-pulse,.eco-lab-svg .lab-ring,.eco-lab-live i { animation:none!important; }
}

/* ==========================================================
   v13 header readability and agent API additions
   ========================================================== */
.site-header {
  grid-template-columns: auto minmax(0,1fr) auto;
  gap: clamp(22px,2.2vw,40px);
  padding-inline: clamp(22px,3.4vw,64px);
}
.brand { white-space: nowrap; }
.brand-version { white-space: nowrap; }
.desktop-nav {
  min-width: 0;
  justify-content: center;
  gap: clamp(16px,1.65vw,30px);
  white-space: nowrap;
}
.desktop-nav a,
.header-docs,
.header-actions .button-small { white-space: nowrap; }
.desktop-nav a,
.header-docs { font-size: 14px; }
.header-actions { gap: 12px; white-space: nowrap; }
@media (max-width: 1450px) {
  .brand-version { display:none; }
  .desktop-nav { gap:16px; }
  .desktop-nav a,.header-docs { font-size:13px; }
}
@media (max-width: 1240px) {
  .site-header { grid-template-columns:1fr auto; }
  .desktop-nav { display:none; }
  .menu-toggle { display:flex; }
}

.agent-api-band {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(420px,.85fr);
  gap: 0;
  margin-top: clamp(42px,5vw,76px);
  border: 1px solid var(--line-strong);
  color: var(--ink);
  background:
    radial-gradient(circle at 78% 22%, rgba(var(--blue-rgb),.09), transparent 30%),
    linear-gradient(rgba(7,17,29,.028) 1px,transparent 1px),
    linear-gradient(90deg,rgba(7,17,29,.028) 1px,transparent 1px),
    #fff;
  background-size:auto,48px 48px,48px 48px,auto;
  box-shadow:0 26px 72px rgba(7,17,29,.065);
}
.agent-api-index {
  grid-column:1/-1;
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:0 24px;
  border-bottom:1px solid var(--line);
  font:500 9px/1 var(--mono);
  letter-spacing:.1em;
}
.agent-api-index span { color:var(--blue); }
.agent-api-index b { color:var(--muted); font-weight:400; }
.agent-api-copy { padding:clamp(34px,4vw,62px); border-right:1px solid var(--line); }
.agent-api-copy .micro-label { color:var(--blue); }
.agent-api-copy h3 {
  max-width:18ch;
  margin:20px 0 0;
  font-family:var(--display);
  font-size:clamp(36px,3.6vw,58px);
  line-height:1.02;
  letter-spacing:-.045em;
  font-weight:400;
}
.agent-api-copy p { max-width:760px; margin:25px 0 0; color:#4e5b6c; font-size:16px; line-height:1.72; }
.agent-api-flow {
  min-height:330px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:18px;
  padding:42px;
}
.agent-api-flow span { color:#263445; font:500 11px/1 var(--mono); letter-spacing:.08em; }
.agent-api-flow i { width:1px; height:26px; margin-left:5px; background:linear-gradient(var(--blue),transparent); }
.agent-api-status {
  grid-column:1/-1;
  min-height:66px;
  display:grid;
  grid-template-columns:1fr 1fr auto;
  align-items:center;
  gap:20px;
  padding:0 24px;
  border-top:1px solid var(--line);
  color:var(--muted);
  font:500 9px/1.3 var(--mono);
  letter-spacing:.07em;
}
.agent-api-status i { display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:var(--live);box-shadow:0 0 0 4px rgba(var(--blue-rgb),.08); }
.agent-api-status b { color:var(--ink); font-family:var(--sans); font-size:13px; letter-spacing:0; }
.agent-api-band:hover { border-color:rgba(var(--blue-rgb),.38); }
.eco-agent-capability-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:28px; border:1px solid rgba(255,255,255,.18); }
.eco-agent-capability-grid > div { min-height:102px; padding:18px; border-right:1px solid rgba(255,255,255,.16); }
.eco-agent-capability-grid > div:last-child { border-right:0; }
.eco-agent-capability-grid b { display:block; color:#fff; font:500 10px/1 var(--mono); letter-spacing:.08em; }
.eco-agent-capability-grid span { display:block; margin-top:10px; color:rgba(255,255,255,.64); font-size:12px; line-height:1.45; }
@media (max-width:1024px){
  .agent-api-band{grid-template-columns:1fr}.agent-api-copy{border-right:0;border-bottom:1px solid var(--line)}.agent-api-flow{min-height:0}.eco-agent-capability-grid{grid-template-columns:1fr 1fr}.eco-agent-capability-grid>div:nth-child(2){border-right:0}.eco-agent-capability-grid>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.16)}
}
@media (max-width:720px){
  .agent-api-index{align-items:flex-start;flex-direction:column;justify-content:center;padding:16px 18px}.agent-api-copy{padding:30px 20px}.agent-api-copy h3{font-size:34px}.agent-api-copy p{font-size:15px}.agent-api-flow{padding:30px 20px}.agent-api-status{grid-template-columns:1fr;padding:18px 20px}.eco-agent-capability-grid{grid-template-columns:1fr}.eco-agent-capability-grid>div{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.16)}.eco-agent-capability-grid>div:last-child{border-bottom:0}
}

/* v13 — compact, non-wrapping navigation and agent-native GL1F access. */
.site-header{gap:18px;grid-template-columns:minmax(210px,.9fr) auto minmax(250px,.9fr)}
.brand,.brand-name,.brand-version,.desktop-nav a,.header-docs,.header-actions .button-small{white-space:nowrap}
.desktop-nav{gap:clamp(14px,1.35vw,25px)}
.header-actions{gap:12px}
.desktop-nav a,.header-docs{font-size:14px}
.brand-version{font-size:10px;letter-spacing:.12em}
@media(max-width:1500px){.header-docs{display:none}.site-header{grid-template-columns:minmax(190px,.8fr) auto minmax(210px,.8fr)}.desktop-nav{gap:14px}.header-actions .button-small{padding:0 14px}}
@media(max-width:1260px){.site-header{grid-template-columns:1fr auto}.desktop-nav{display:none}.header-docs{display:none}}

.home-agent-api{
  display:grid;
  grid-template-columns:minmax(0,.86fr) minmax(420px,1.14fr);
  gap:0;
  margin-top:34px;
  border:1px solid var(--line-strong);
  background:#fff;
}
.home-agent-api-copy{padding:clamp(28px,4vw,58px);border-right:1px solid var(--line)}
.home-agent-api-copy>span{display:flex;align-items:center;gap:10px;color:var(--blue);font:500 10px/1 var(--mono);letter-spacing:.1em}
.home-agent-api-copy>span i{width:7px;height:7px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 6px rgba(var(--blue-rgb),.08)}
.home-agent-api-copy h3{margin:24px 0 0;font-size:clamp(34px,3.3vw,56px);font-weight:400;line-height:1;letter-spacing:-.045em}
.home-agent-api-copy p{max-width:690px;margin:22px 0 0;color:#526074;font-size:16px;line-height:1.72}
.home-agent-api-status{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.home-agent-api-status b{padding:8px 10px;border:1px solid var(--line);color:var(--muted);font:500 9px/1 var(--mono);letter-spacing:.07em}
.home-agent-api-status b:first-child,.home-agent-api-status b:nth-child(2){color:var(--blue);border-color:rgba(var(--blue-rgb),.24);background:rgba(var(--blue-rgb),.035)}
.home-agent-api-console{display:grid;grid-template-columns:1fr 1fr;background:#f7f9fb}
.home-agent-api-console>div{min-height:156px;display:grid;align-content:center;gap:12px;padding:26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.home-agent-api-console>div:nth-child(2n){border-right:0}.home-agent-api-console>div:nth-last-child(-n+2){border-bottom:0}
.home-agent-api-console span{color:var(--blue);font:500 10px/1 var(--mono)}
.home-agent-api-console code{color:var(--ink);font:500 15px/1.4 var(--mono);word-break:break-word}
.home-agent-api-console b{color:var(--muted);font:500 9px/1 var(--mono);letter-spacing:.08em}

.eco-agent-api{margin-top:34px;border:1px solid var(--line-strong);background:#fff}
.eco-agent-api-head{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 22px;border-bottom:1px solid var(--line);font:500 10px/1 var(--mono);letter-spacing:.08em}
.eco-agent-api-head span{color:var(--blue)}.eco-agent-api-head b{color:var(--muted);font-weight:500}
.eco-agent-api-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,.8fr)}
.eco-agent-api-copy{padding:clamp(30px,4vw,62px);border-right:1px solid var(--line)}
.eco-agent-api-copy h3{max-width:760px;margin:0;font-size:clamp(38px,4vw,68px);font-weight:400;line-height:.98;letter-spacing:-.05em}
.eco-agent-api-copy p{max-width:790px;margin:24px 0 0;color:#526074;font-size:16px;line-height:1.72}
.eco-agent-api-methods{display:grid;background:#f7f9fb}
.eco-agent-api-methods>div{display:grid;grid-template-columns:58px 1fr;align-content:center;column-gap:18px;min-height:128px;padding:22px 26px;border-bottom:1px solid var(--line)}
.eco-agent-api-methods>div:last-child{border-bottom:0}
.eco-agent-api-methods span{grid-row:1/3;color:var(--blue);font:500 10px/1 var(--mono)}
.eco-agent-api-methods strong{font-family:var(--display);font-size:18px;font-weight:500;letter-spacing:-.02em}
.eco-agent-api-methods code{margin-top:6px;color:var(--muted);font:400 10px/1.4 var(--mono)}
.eco-agent-api-foot{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 22px;border-top:1px solid var(--line);color:var(--muted);font:500 9px/1 var(--mono);letter-spacing:.07em}
.eco-agent-api-foot span:first-child{color:var(--blue)}
@media(max-width:980px){.home-agent-api,.eco-agent-api-grid{grid-template-columns:1fr}.home-agent-api-copy,.eco-agent-api-copy{border-right:0;border-bottom:1px solid var(--line)}.eco-agent-api-methods{grid-template-columns:1fr 1fr}.eco-agent-api-methods>div:nth-child(odd){border-right:1px solid var(--line)}.eco-agent-api-methods>div:nth-last-child(-n+2){border-bottom:0}}
@media(max-width:640px){.home-agent-api-console,.eco-agent-api-methods{grid-template-columns:1fr}.home-agent-api-console>div,.home-agent-api-console>div:nth-child(2n),.home-agent-api-console>div:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--line)}.home-agent-api-console>div:last-child{border-bottom:0}.eco-agent-api-methods>div,.eco-agent-api-methods>div:nth-child(odd),.eco-agent-api-methods>div:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--line)}.eco-agent-api-methods>div:last-child{border-bottom:0}.eco-agent-api-head,.eco-agent-api-foot{align-items:flex-start;flex-direction:column;justify-content:center;padding:16px 18px;line-height:1.45}.home-agent-api-copy p,.eco-agent-api-copy p{font-size:15px}}
/* v13.1 — readable agent capability matrix inside the compact agent card. */
.eco-agent-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.eco-agent-capability-grid>div{min-width:0;border-bottom:1px solid rgba(255,255,255,.16);}
.eco-agent-capability-grid>div:nth-child(2n){border-right:0;}
.eco-agent-capability-grid>div:nth-last-child(-n+2){border-bottom:0;}
@media(max-width:720px){
  .eco-agent-capability-grid{grid-template-columns:1fr 1fr;}
  .eco-agent-capability-grid>div{border-right:1px solid rgba(255,255,255,.16)!important;border-bottom:1px solid rgba(255,255,255,.16)!important;}
  .eco-agent-capability-grid>div:nth-child(2n){border-right:0!important;}
  .eco-agent-capability-grid>div:nth-last-child(-n+2){border-bottom:0!important;}
}

/* ==========================================================
   GenesisL1 v14 — general ecosystem atlas + white network apps
   ========================================================== */
.eco-hero-v14 {
  min-height: calc(100svh - var(--header-h));
  display: grid;
  grid-template-columns: minmax(0,.86fr) minmax(620px,1.14fr);
  gap: clamp(52px,6vw,112px);
  align-items: center;
  padding-top: clamp(72px,7vw,116px);
  padding-bottom: clamp(82px,8vw,132px);
  background:
    radial-gradient(circle at 78% 35%, rgba(var(--blue-rgb),.045), transparent 34%),
    linear-gradient(180deg,#fff 0%,#fbfcfe 100%);
}
.eco-v14-copy { min-width:0; }
.eco-v14-title {
  max-width: 10.7ch;
  margin: clamp(46px,5vw,76px) 0 0;
  color: var(--ink);
  font-family: var(--display);
  font-size: clamp(68px,6vw,108px);
  font-weight: 400;
  line-height: .94;
  letter-spacing: -.055em;
}
.eco-v14-title span { white-space:nowrap; }
.eco-v14-title em { color: var(--ink); font-weight:400; font-style:italic; }
.eco-v14-lead {
  max-width: 740px;
  margin: clamp(30px,3vw,46px) 0 0;
  color: #4d5b6d;
  font-size: clamp(18px,1.25vw,22px);
  line-height: 1.68;
}
.eco-v14-actions { display:flex; align-items:center; flex-wrap:wrap; gap:24px; margin-top:34px; }
.eco-v14-actions .button { min-height:52px; padding-inline:24px; }
.eco-v14-capabilities {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin-top:54px;
  border-top:1px solid var(--line-strong);
  border-left:1px solid var(--line);
}
.eco-v14-capabilities > div {
  min-height:112px;
  display:grid;
  grid-template-columns:46px 1fr;
  align-items:center;
  gap:18px;
  padding:20px 22px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:rgba(255,255,255,.72);
}
.eco-v14-capabilities svg {
  width:42px;
  height:42px;
  fill:none;
  stroke:#263242;
  stroke-width:1.35;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.eco-v14-capabilities span { min-width:0; }
.eco-v14-capabilities strong { display:block; color:var(--ink); font-family:var(--display); font-size:18px; font-weight:500; letter-spacing:-.02em; }
.eco-v14-capabilities small { display:block; margin-top:6px; color:var(--muted); font-size:14px; line-height:1.45; }

.eco-v14-atlas {
  position:relative;
  overflow:hidden;
  min-height:760px;
  border:1px solid var(--line-strong);
  background:linear-gradient(180deg,#fff 0%,#f8fafc 100%);
  box-shadow:0 38px 120px rgba(7,17,29,.09);
}
.eco-v14-atlas::before,.eco-v14-atlas::after { content:""; position:absolute; z-index:8; width:22px; height:22px; pointer-events:none; }
.eco-v14-atlas::before { left:-1px; top:-1px; border-left:3px solid var(--ink); border-top:3px solid var(--ink); }
.eco-v14-atlas::after { right:-1px; bottom:-1px; border-right:3px solid var(--ink); border-bottom:3px solid var(--ink); }
.eco-v14-atlas-top {
  height:64px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:0 23px;
  border-bottom:1px solid var(--line);
  background:rgba(255,255,255,.9);
  color:var(--muted);
  font:500 11px/1 var(--mono);
  letter-spacing:.09em;
}
.eco-v14-atlas-top b { color:var(--ink); font-weight:500; }
.eco-v14-atlas-top span { display:inline-flex; align-items:center; gap:9px; white-space:nowrap; }
.eco-v14-atlas-top i { width:7px; height:7px; border-radius:50%; background:var(--blue); box-shadow:0 0 0 5px rgba(var(--blue-rgb),.08); animation:ecoV14Pulse 2.6s ease-in-out infinite; }
.eco-v14-atlas-stage { position:relative; height:600px; overflow:hidden; }
.eco-v14-atlas-grid {
  position:absolute;
  inset:0;
  opacity:.48;
  background-image:linear-gradient(rgba(7,17,29,.042) 1px,transparent 1px),linear-gradient(90deg,rgba(7,17,29,.042) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:radial-gradient(circle at center,#000 0%,rgba(0,0,0,.82) 58%,transparent 92%);
}
.eco-v14-atlas-svg { position:absolute; inset:0; width:100%; height:100%; }
.eco-v14-atlas-svg .atlas-orbit { fill:none; stroke:rgba(7,17,29,.13); stroke-width:1; transform-origin:450px 300px; }
.eco-v14-atlas-svg .atlas-orbit-a { stroke-dasharray:2 8; animation:ecoV14Rotate 30s linear infinite; }
.eco-v14-atlas-svg .atlas-orbit-b { stroke:rgba(var(--blue-rgb),.18); animation:ecoV14RotateReverse 38s linear infinite; }
.eco-v14-atlas-svg .atlas-flow { fill:none; stroke:var(--blue); stroke-width:2; stroke-linecap:round; stroke-dasharray:10 13; animation:ecoV14Flow 9s linear infinite; }
.eco-v14-atlas-svg .atlas-baseline,.eco-v14-atlas-svg .atlas-sequence { fill:none; stroke:rgba(7,17,29,.16); stroke-width:1; }
.eco-v14-atlas-svg .atlas-objects path,.eco-v14-atlas-svg .atlas-inference path { fill:none; stroke:rgba(7,17,29,.46); stroke-width:1.45; }
.eco-v14-atlas-svg .atlas-objects circle,.eco-v14-atlas-svg .atlas-inference circle { fill:#fff; stroke:rgba(7,17,29,.5); stroke-width:1.7; }
.eco-v14-atlas-svg .atlas-objects circle:nth-of-type(2n),.eco-v14-atlas-svg .atlas-inference circle:nth-of-type(2n) { stroke:rgba(var(--blue-rgb),.62); }
.eco-v14-atlas-svg .atlas-forest path { fill:none; stroke:rgba(7,17,29,.56); stroke-width:1.45; stroke-linecap:round; }
.eco-v14-atlas-svg .atlas-forest circle { fill:#fff; stroke:rgba(7,17,29,.55); stroke-width:1.5; }
.eco-v14-atlas-svg .atlas-core > circle:first-child { fill:#fff; stroke:rgba(7,17,29,.18); }
.eco-v14-atlas-svg .atlas-core > circle:nth-child(2) { fill:#fff; stroke:rgba(var(--blue-rgb),.13); stroke-width:10; }
.eco-v14-atlas-svg .atlas-output rect { fill:rgba(255,255,255,.96); stroke:rgba(7,17,29,.22); }
.eco-v14-atlas-svg .atlas-output path { fill:none; stroke:rgba(7,17,29,.45); stroke-width:1.5; }
.atlas-label {
  position:absolute;
  z-index:4;
  min-width:150px;
  display:grid;
  gap:6px;
  padding:14px 15px;
  border:1px solid rgba(7,17,29,.14);
  background:rgba(255,255,255,.92);
  box-shadow:0 14px 36px rgba(7,17,29,.05);
}
.atlas-label span { color:#4b5b6f; font:500 10px/1 var(--mono); letter-spacing:.08em; }
.atlas-label b { color:var(--ink); font-family:var(--display); font-size:17px; font-weight:500; letter-spacing:-.02em; }
.atlas-label small { color:var(--muted); font:400 11px/1.45 var(--mono); }
.atlas-label-objects { left:3.5%; top:8%; }
.atlas-label-models { left:38%; top:6%; }
.atlas-label-apps { right:3.5%; top:9%; }
.atlas-label-proof { right:4%; bottom:7%; }
.atlas-core-caption { position:absolute; left:50%; top:67%; transform:translateX(-50%); color:var(--muted); font:500 10px/1 var(--mono); letter-spacing:.1em; white-space:nowrap; }
.eco-v14-atlas-readout { min-height:96px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--line); }
.eco-v14-atlas-readout > div { display:grid; align-content:center; gap:7px; padding:16px 18px; border-right:1px solid var(--line); }
.eco-v14-atlas-readout > div:last-child { border-right:0; }
.eco-v14-atlas-readout span { color:var(--muted); font:500 10px/1 var(--mono); letter-spacing:.08em; text-transform:uppercase; }
.eco-v14-atlas-readout strong { color:var(--ink); font-family:var(--display); font-size:17px; font-weight:500; letter-spacing:-.02em; }
@keyframes ecoV14Flow { to { stroke-dashoffset:-230; } }
@keyframes ecoV14Rotate { to { transform:rotate(360deg); } }
@keyframes ecoV14RotateReverse { to { transform:rotate(-360deg); } }
@keyframes ecoV14Pulse { 50% { transform:scale(1.18); box-shadow:0 0 0 10px rgba(var(--blue-rgb),0); } }
@keyframes ecoV14Node { 50% { transform:scale(1.45); transform-origin:center; } }

/* White editorial web3 application suite. */
.eco-network-suite { background:#fff; color:var(--ink); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.eco-network-suite-inner { padding-top:clamp(80px,8vw,132px); padding-bottom:clamp(86px,9vw,144px); }
.eco-network-suite-heading { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(360px,.72fr); gap:clamp(38px,7vw,116px); align-items:end; padding:70px 0 76px; }
.eco-network-suite-heading .section-title { color:var(--ink); }
.eco-network-suite-heading .section-title em { color:var(--ink); font-style:italic; }
.eco-network-suite-heading > p { max-width:650px; margin:0; color:#526074; font-size:18px; line-height:1.7; }
.eco-network-primary-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--line-strong); border-left:1px solid var(--line-strong); }
.eco-network-app-card { min-width:0; display:flex; flex-direction:column; color:var(--ink); background:#fff; border-right:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong); text-decoration:none; transition:background .22s,transform .22s; }
.eco-network-app-card:hover { z-index:2; transform:translateY(-4px); background:#fbfcfe; }
.eco-network-app-head { min-height:54px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:0 20px; border-bottom:1px solid var(--line); color:#536174; font:500 11px/1 var(--mono); letter-spacing:.08em; }
.eco-network-app-head small { display:inline-flex; align-items:center; gap:7px; color:#536174; font:500 10px/1 var(--mono); }
.eco-network-app-head i { width:6px; height:6px; border-radius:50%; background:var(--blue); box-shadow:0 0 0 4px rgba(var(--blue-rgb),.08); }
.eco-network-app-visual { height:240px; display:grid; place-items:center; padding:22px; border-bottom:1px solid var(--line); background:linear-gradient(180deg,#fff,#f9fafc); overflow:hidden; }
.eco-network-app-visual svg { width:100%; height:100%; fill:none; stroke:#111a25; stroke-width:1.35; stroke-linecap:round; stroke-linejoin:round; }
.eco-network-app-visual svg circle { fill:#fff; }
.eco-network-app-visual .bridge-app-flow { stroke:var(--blue); stroke-dasharray:7 10; animation:ecoV14Flow 8s linear infinite; }
.eco-network-app-copy { min-height:310px; display:flex; flex-direction:column; padding:28px 28px 30px; }
.eco-network-app-copy h3 { margin:0; color:var(--ink); font-family:var(--display); font-size:32px; font-weight:400; line-height:1.05; letter-spacing:-.04em; }
.eco-network-app-copy p { margin:20px 0 0; color:#596679; font-size:16px; line-height:1.68; }
.eco-network-app-copy b { margin-top:auto; padding-top:28px; color:var(--ink); font-size:14px; }
.eco-network-app-copy b span { color:var(--blue); }
.eco-network-secondary-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-left:1px solid var(--line-strong); }
.eco-network-mini-card { min-height:230px; display:grid; grid-template-columns:72px 1fr; gap:22px; align-items:start; padding:28px; border-right:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong); color:var(--ink); background:#fafbfc; text-decoration:none; transition:background .2s; }
.eco-network-mini-card:hover { background:#fff; }
.eco-network-mini-card svg { width:64px; height:64px; fill:none; stroke:#172231; stroke-width:1.4; stroke-linecap:round; stroke-linejoin:round; }
.eco-network-mini-card svg text { fill:var(--ink); stroke:none; font:600 13px var(--mono); }
.eco-network-mini-card span { color:#637084; font:500 10px/1 var(--mono); letter-spacing:.09em; }
.eco-network-mini-card h3 { margin:13px 0 0; font-family:var(--display); font-size:24px; font-weight:400; letter-spacing:-.03em; }
.eco-network-mini-card p { margin:12px 0 0; color:#667387; font-size:15px; line-height:1.62; }
.eco-network-mini-card b { display:block; margin-top:18px; font-size:13px; }
.eco-network-suite-note { display:grid; grid-template-columns:auto 1fr; gap:36px; align-items:start; margin-top:38px; padding-top:26px; border-top:1px solid var(--line-strong); }
.eco-network-suite-note span { color:#4d5c70; font:500 10px/1 var(--mono); letter-spacing:.1em; }
.eco-network-suite-note p { max-width:980px; margin:0; color:#6b7788; font-size:14px; line-height:1.65; }

/* Improve readable type across the ecosystem without losing hierarchy. */
.ecosystem-page .eco-card-top,
.ecosystem-page .eco-card-tag,
.ecosystem-page .eco-bio-panel-top,
.ecosystem-page .eco-filter-bar button,
.ecosystem-page .eco-tool-card > span,
.ecosystem-page .section-kicker,
.ecosystem-page .micro-label { font-size:12px; }
.ecosystem-page .eco-card-copy p,
.ecosystem-page .eco-bio-panel p,
.ecosystem-page .eco-tool-card p,
.ecosystem-page .ai-capability-card p,
.ecosystem-page .dao-capability-card p,
.ecosystem-page .bio-capability-card p { font-size:16px; line-height:1.7; }
.ecosystem-page .eco-card-copy h3 { font-size:clamp(26px,2vw,34px); }
.ecosystem-page .eco-card-link,
.ecosystem-page .eco-tool-card > b,
.ecosystem-page .eco-bio-panel > a { font-size:14px; }

@media (max-width:1300px) {
  .eco-hero-v14 { grid-template-columns:1fr; }
  .eco-v14-title { max-width:12ch; }
  .eco-v14-atlas { min-height:730px; }
}
@media (max-width:980px) {
  .eco-network-primary-grid,.eco-network-secondary-grid { grid-template-columns:1fr; }
  .eco-network-suite-heading { grid-template-columns:1fr; align-items:start; }
  .eco-network-app-copy { min-height:0; }
  .eco-network-mini-card { border-left:0; }
  .atlas-label { min-width:128px; }
}
@media (max-width:720px) {
  .eco-hero-v14 { padding-top:58px; padding-bottom:78px; }
  .eco-v14-title { max-width:10.8ch; font-size:clamp(52px,13.6vw,74px); }
  .eco-v14-lead { font-size:17px; }
  .eco-v14-capabilities { grid-template-columns:1fr; }
  .eco-v14-atlas { min-height:650px; }
  .eco-v14-atlas-stage { height:500px; }
  .eco-v14-atlas-top { font-size:9px; padding:0 14px; }
  .atlas-label { min-width:104px; padding:10px 11px; }
  .atlas-label b { font-size:13px; }
  .atlas-label small { display:none; }
  .atlas-label-objects { left:2%; top:7%; }
  .atlas-label-models { left:35%; top:5%; }
  .atlas-label-apps { right:2%; top:8%; }
  .atlas-label-proof { right:2%; bottom:5%; }
  .eco-v14-atlas-readout { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .eco-v14-atlas-readout > div:nth-child(2) { border-right:0; }
  .eco-v14-atlas-readout > div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .eco-network-suite-heading { padding:54px 0 58px; }
  .eco-network-suite-heading > p { font-size:16px; }
  .eco-network-app-visual { height:210px; }
  .eco-network-app-copy { padding:24px; }
  .eco-network-app-copy h3 { font-size:29px; }
  .eco-network-mini-card { grid-template-columns:58px 1fr; gap:18px; padding:24px 20px; }
  .eco-network-mini-card svg { width:54px; height:54px; }
  .eco-network-suite-note { grid-template-columns:1fr; gap:12px; }
}
@media (max-width:480px) {
  .eco-v14-atlas-stage { height:455px; }
  .atlas-label-models { display:none; }
  .atlas-core-caption { font-size:8px; }
  .eco-v14-atlas-readout strong { font-size:14px; }
}
@media (prefers-reduced-motion:reduce) {
  .eco-v14-atlas-top i,.eco-v14-atlas-svg .atlas-orbit,.eco-v14-atlas-svg .atlas-flow,.eco-network-app-visual .bridge-app-flow { animation:none!important; }
}
/* v16: bridged EVM access is a first-class network gateway. */
.base-wl1-access{position:relative;background:linear-gradient(120deg,#fff 0%,#fbfcfe 58%,#f1f6fa 100%)}
.base-wl1-access::after{content:"BASE / EVM";position:absolute;right:18px;top:16px;font:700 9px/1 var(--mono);letter-spacing:.14em;color:#5e7585}
.base-wl1-access svg circle{fill:none;stroke:#101820}.base-wl1-access svg path{stroke:#2a6b95}.base-wl1-access svg text{font:700 8px/1 var(--mono);fill:#101820;text-anchor:middle}
@media(min-width:1180px){.eco-network-secondary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* GenesisL1 v16.2 — mobile navigation hardening */
@media (max-width: 1280px) {
  .menu-toggle { display:flex !important; position:relative; z-index:1002; }
  .mobile-menu {
    display:block;
    position:fixed;
    inset:var(--header-h) 0 0;
    z-index:1000;
    padding:24px clamp(18px,4vw,32px) 32px;
    background:#fff;
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    transform:translateY(-105%);
    transition:transform .32s cubic-bezier(.22,1,.36,1), visibility 0s linear .32s;
    visibility:hidden;
    pointer-events:none;
  }
  .mobile-menu.is-open {
    transform:translateY(0);
    visibility:visible;
    pointer-events:auto;
    transition-delay:0s;
  }
  .mobile-menu nav { display:flex; flex-direction:column; }
  .mobile-menu nav a {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:16px;
    min-height:58px;
    padding:12px 0;
    border-bottom:1px solid var(--line-strong);
    font-family:var(--display);
    font-size:clamp(23px,3.8vw,34px);
    line-height:1.12;
    letter-spacing:-.025em;
    font-weight:400;
    overflow-wrap:anywhere;
  }
  .mobile-menu nav span { align-self:start; padding-top:.35em; font:400 9px/1 var(--mono); white-space:nowrap; }
  .mobile-menu-foot { display:none !important; }
  body.menu-open { overflow:hidden; touch-action:none; }
}
@media (max-width: 600px) {
  .mobile-menu { padding-top:12px; }
  .mobile-menu nav a { min-height:54px; padding:10px 0; font-size:clamp(22px,6.5vw,29px); }
}

/* =========================================================
   GenesisL1 v16.3 — tablet/mobile alignment refinement
   Keeps desktop composition intact; removes oversized empty
   regions and restores balanced editorial rhythm on iPad and phones.
   ========================================================= */

@media (min-width: 721px) and (max-width: 1180px) {
  .section-frame { width: min(100% - 56px, 1120px); }
  .hero { min-height: auto; }
  .hero-grid { grid-template-columns: minmax(0,.94fr) minmax(0,1.06fr); }
  .hero-copy { padding: 72px 48px 64px; }
  .hero-visual { min-height: 650px; }

  /* Agent interface: compact, balanced horizontal instrument. */
  .agent-api-band { grid-template-columns: minmax(0,1.16fr) minmax(220px,.84fr); }
  .agent-api-copy { padding: 44px 38px; border-right: 1px solid var(--line); border-bottom: 0; }
  .agent-api-copy h3 { max-width: 16ch; font-size: clamp(38px,5vw,51px); }
  .agent-api-copy p { font-size: 16px; line-height: 1.65; }
  .agent-api-flow {
    min-height: 0;
    align-self: stretch;
    justify-content: center;
    padding: 38px 30px;
    gap: 14px;
  }
  .agent-api-flow i { height: 22px; }
  .agent-api-status { min-height: 62px; }

  /* Native asset: preserve the visual centerpiece and keep metric cards side by side. */
  .l1-asset-stage {
    grid-template-columns: minmax(190px,.62fr) minmax(340px,1.25fr) minmax(190px,.62fr);
    gap: 20px;
    align-items: center;
  }
  .l1-side-metric { min-height: 300px; padding: 26px 24px; }
  .l1-side-metric strong { font-size: clamp(58px,7vw,84px); }
  .l1-coin-diagram { min-height: 520px; }
  .l1-role-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .l1-role-card { min-height: 260px; }
  .l1-distribution-grid { grid-template-columns: 1fr 1fr; }
  .l1-public-goods { grid-template-columns: minmax(260px,.7fr) minmax(0,1.3fr); }

  /* Scientific pipeline: four compact stages instead of oversized vertical cards. */
  .home-ai-pipeline {
    grid-template-columns: repeat(4,minmax(0,1fr));
    grid-template-rows: 1fr;
    gap: 0;
    min-height: 0;
    padding: 18px;
  }
  .home-ai-step { min-height: 172px; padding: 22px 18px; }
  .home-ai-pipeline > i { width: 22px; height: 1px; align-self: center; }
  .home-ai-pipeline > i::after { left:auto; right:0; bottom:-3px; transform:rotate(-45deg); }

  /* Institution replay sequence: a proper three-step horizontal process. */
  .ai-institution-panel { grid-template-columns: 1fr; gap: 36px; padding: 48px 38px; }
  .ai-institution-copy { max-width: 820px; }
  .ai-institution-copy h3 { font-size: clamp(46px,6vw,66px); }
  .ai-institution-copy p { max-width: 780px; font-size: 17px; }
  .ai-verification-steps {
    grid-template-columns: minmax(0,1fr) 34px minmax(0,1fr) 34px minmax(0,1fr);
    width: 100%; max-width: none;
  }
  .ai-verification-steps > div { min-height: 190px; padding: 26px; }
  .ai-verification-steps b { font-size: 27px; }
  .ai-epistemic-note { padding: 32px 28px; }
}

@media (max-width: 720px) {
  .section-frame { width: calc(100% - 28px); }
  .section-kicker { gap: 10px; }

  /* Hero alignment and readable editorial rhythm. */
  .hero-grid { grid-template-columns: 1fr; }
  .hero-copy { padding: 48px 20px 36px; }
  .hero-copy h1 { font-size: clamp(58px,18vw,84px); }
  .hero-statement { max-width: 13ch; font-size: clamp(31px,9vw,44px); }
  .hero-visual { min-height: 520px; }

  /* Agent interface: no blank lower panel; flow becomes a compact horizontal rail. */
  .agent-api-band { display:block; }
  .agent-api-index { min-height: 56px; }
  .agent-api-copy { padding: 28px 20px 24px; }
  .agent-api-copy h3 { max-width: none; font-size: clamp(32px,9vw,42px); line-height: 1.04; }
  .agent-api-copy p { margin-top: 20px; font-size: 16px; line-height: 1.62; }
  .agent-api-flow {
    min-height: 0;
    display:grid;
    grid-template-columns: repeat(5,minmax(0,1fr));
    gap:0;
    padding: 22px 16px;
    border-top:1px solid var(--line);
  }
  .agent-api-flow span { text-align:center; font-size:9px; }
  .agent-api-flow i { display:none; }
  .agent-api-status { min-height:0; gap:10px; padding:16px 18px; }

  /* L1 metrics and public-goods panel: compact and consistent. */
  .l1-side-metric { min-height: 0; padding: 24px 22px; }
  .l1-side-metric strong { font-size: clamp(58px,20vw,78px); }
  .l1-side-metric p { max-width: 34ch; }
  .l1-distribution-grid { gap: 12px; }
  .l1-distribution-card { min-height: 0; padding: 22px 20px; }
  .l1-final-callout { min-height: 130px; padding: 26px 20px; }
  .l1-final-callout p { font-size: clamp(19px,5.7vw,25px); }
  .l1-public-goods { margin-top: 28px; }
  .l1-public-goods-metric { min-height: 0; padding: 28px 22px; }
  .l1-public-goods-metric strong { font-size: clamp(72px,23vw,100px); }
  .l1-public-goods-copy { padding: 30px 22px; }

  /* Homepage pipeline cards: remove excessive whitespace. */
  .home-ai-pipeline { padding: 14px; }
  .home-ai-step { min-height: 150px; padding: 22px 18px; align-content:center; }
  .home-ai-step strong { font-size: 25px; }
  .home-ai-step small { font-size: 8px; }

  /* Institution panel: compact cards and tighter spacing. */
  .ai-institution-panel { gap: 28px; padding: 28px 20px; }
  .ai-institution-copy h3 { margin: 18px 0 20px; font-size: clamp(40px,12vw,54px); }
  .ai-institution-copy p { font-size: 16px; line-height: 1.62; }
  .ai-verification-steps > div { min-height: 132px; padding: 20px; }
  .ai-verification-steps b { margin:auto 0 8px; font-size: 25px; }
  .ai-verification-steps small { font-size: 12px; }
  .ai-epistemic-note { margin-top: 26px; padding: 24px 20px; }
  .ai-epistemic-note p { font-size: 15px; line-height: 1.62; }
}

@media (max-width: 430px) {
  .agent-api-flow { grid-template-columns: repeat(3,minmax(0,1fr)); row-gap:16px; }
  .agent-api-flow span:nth-of-type(4),
  .agent-api-flow span:nth-of-type(5) { grid-column: span 1; }
  .l1-side-metric strong { font-size: 62px; }
  .home-ai-step { min-height: 136px; }
}

/* =========================================================
   GenesisL1 v16.4 — final iPhone/iPad alignment pass
   ========================================================= */
@media (max-width: 720px) {
  /* The hero starts directly with the project identity. */
  .home-short .hero-copy { padding-top: 44px; }

  /* Molecular pipeline: compact, consistently aligned instrument rows. */
  .home-lab-panel { overflow: hidden; }
  .home-panel-head {
    min-height: 54px;
    padding: 0 16px;
    gap: 10px;
  }
  .home-panel-head b { font-size: 7px; text-align: right; }
  .home-bio-flow {
    padding: 18px 14px !important;
    gap: 9px !important;
  }
  .home-bio-node {
    min-height: 92px !important;
    padding: 12px 14px !important;
    grid-template-columns: 24px 58px minmax(0,1fr) !important;
    column-gap: 10px !important;
    align-items: center !important;
  }
  .home-bio-glyph {
    width: 52px !important;
    height: 52px !important;
  }
  .home-bio-node strong {
    margin: 0 !important;
    font-size: 22px !important;
    align-self: end;
  }
  .home-bio-node small {
    margin-top: 4px !important;
    align-self: start;
  }
  .home-flow-line { height: 18px !important; }
  .home-panel-foot {
    min-height: 0;
    padding: 16px;
    gap: 9px 12px;
  }
  .home-brief-actions {
    gap: 18px;
    align-items: stretch;
  }
  .home-brief-actions .button { width: 100%; justify-content: center; text-align: center; }

  /* Verifiable AI sequence: equal-height concise rows. */
  .home-ai-pipeline {
    padding: 12px !important;
    grid-template-rows: auto 16px auto 16px auto 16px auto !important;
  }
  .home-ai-step {
    min-height: 92px !important;
    padding: 16px !important;
    grid-template-columns: 28px minmax(0,1fr) !important;
  }
  .home-ai-step strong { font-size: 22px !important; }
  .home-ai-pipeline > i { height: 16px !important; }

  /* Contract-native agent API: remove the tall empty column completely. */
  .agent-api-band { display: block !important; }
  .agent-api-band .agent-api-flow {
    display: grid !important;
    grid-template-columns: repeat(5,minmax(0,1fr)) !important;
    grid-auto-rows: auto !important;
    align-items: center !important;
    min-height: 0 !important;
    padding: 18px 10px !important;
    gap: 0 !important;
  }
  .agent-api-band .agent-api-flow span {
    display: block !important;
    padding: 0 3px !important;
    text-align: center !important;
    font-size: 8px !important;
    line-height: 1.25 !important;
  }
  .agent-api-band .agent-api-flow i { display: none !important; }
  .agent-api-band .agent-api-status {
    display: grid !important;
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
    padding: 14px 16px !important;
    gap: 10px !important;
  }
  .agent-api-band .agent-api-status > * { min-width: 0; overflow-wrap: anywhere; }

  /* Institution replay cards: tighter and visually centered. */
  .ai-verification-steps { width: 100%; }
  .ai-verification-steps > div {
    min-height: 108px !important;
    padding: 17px 18px !important;
  }
  .ai-verification-steps b { margin: 18px 0 6px !important; font-size: 23px !important; }
  .ai-verification-steps > i { height: 20px !important; }

  /* Prevent utility/footer text from crowding section boundaries. */
  .overview-marker {
    gap: 12px !important;
    padding: 18px 0 !important;
  }
  .overview-marker > * { min-width: 0; overflow-wrap: anywhere; }
}

@media (max-width: 430px) {
  .home-short .hero-copy { padding-top: 38px; }
  .agent-api-band .agent-api-flow {
    grid-template-columns: repeat(5,minmax(0,1fr)) !important;
  }
  .agent-api-band .agent-api-flow span { font-size: 7.5px !important; letter-spacing: .03em !important; }
  .home-bio-node { grid-template-columns: 22px 54px minmax(0,1fr) !important; }
  .home-bio-glyph { width: 48px !important; height: 48px !important; }
}


/* =========================================================
   GenesisL1 v16.5 — mobile editorial quality pass
   Compact cards, balanced typography and Safari-safe grids.
   Desktop composition is unchanged.
   ========================================================= */
@media (max-width: 720px) {
  /* Keep project identity immediate and remove inherited top gaps. */
  .hero-copy { padding-top: 34px !important; }
  .home-short .hero-copy { padding-top: 34px !important; }
  .hero-copy > .eyebrow { display:none !important; }

  /* More confident mobile page proportions. */
  .home-brief { padding-top: 58px !important; padding-bottom: 58px !important; }
  .home-brief-intro { gap: 24px !important; }
  .home-brief-copy p { max-width:none !important; }

  /* Molecular medicine pipeline: rows, not empty poster cards. */
  .home-bio-flow {
    display:grid !important;
    grid-template-columns:1fr !important;
    padding:12px !important;
    gap:0 !important;
  }
  .home-bio-node {
    min-height:76px !important;
    padding:10px 12px !important;
    grid-template-columns:20px 44px minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    column-gap:10px !important;
    border-color:rgba(24,38,57,.11) !important;
  }
  .home-bio-node > span { grid-row:1/3 !important; align-self:start !important; padding-top:3px; }
  .home-bio-glyph { width:40px !important; height:40px !important; grid-row:1/3 !important; }
  .home-bio-node strong { margin:0 !important; align-self:end !important; font-size:20px !important; line-height:1.05 !important; }
  .home-bio-node small { margin:3px 0 0 !important; align-self:start !important; font-size:7px !important; }
  .home-flow-line { height:14px !important; }
  .home-panel-foot { grid-template-columns:auto 1fr !important; padding:14px !important; }

  /* AI pipeline: compact information rows. */
  .home-ai-pipeline { padding:10px !important; }
  .home-ai-step {
    min-height:76px !important;
    padding:13px 14px !important;
    grid-template-columns:24px minmax(0,1fr) !important;
    column-gap:10px !important;
  }
  .home-ai-step strong { font-size:20px !important; }
  .home-ai-step small { margin-top:4px !important; }
  .home-ai-pipeline > i { height:13px !important; }

  /* Contract-native API: eliminate tall empty method and flow areas. */
  .home-agent-api-copy { padding:28px 20px !important; }
  .home-agent-api-copy h3 { font-size:clamp(34px,10vw,43px) !important; }
  .home-agent-api-copy p { font-size:16px !important; line-height:1.62 !important; }
  .home-agent-api-console { grid-template-columns:1fr 1fr !important; }
  .home-agent-api-console > div,
  .home-agent-api-console > div:nth-child(2n),
  .home-agent-api-console > div:nth-last-child(-n+2) {
    min-height:92px !important;
    padding:16px !important;
    border-right:1px solid var(--line) !important;
    border-bottom:1px solid var(--line) !important;
  }
  .home-agent-api-console > div:nth-child(2n) { border-right:0 !important; }
  .home-agent-api-console > div:nth-last-child(-n+2) { border-bottom:0 !important; }
  .home-agent-api-console code { font-size:12px !important; }

  .agent-api-band .agent-api-flow,
  .agent-api-flow {
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    grid-template-rows:auto !important;
    grid-auto-flow:column !important;
    align-items:center !important;
    min-height:0 !important;
    height:auto !important;
    padding:16px 8px !important;
    gap:0 !important;
    flex-direction:row !important;
  }
  .agent-api-band .agent-api-flow span,
  .agent-api-flow span {
    display:block !important;
    min-width:0 !important;
    padding:0 2px !important;
    text-align:center !important;
    font-size:7.5px !important;
    line-height:1.2 !important;
    letter-spacing:.025em !important;
    white-space:nowrap !important;
  }
  .agent-api-band .agent-api-flow i,
  .agent-api-flow i { display:none !important; }
  .agent-api-band .agent-api-status { padding:13px 14px !important; gap:7px !important; }

  /* CIPNFT: three concise exchange stages. */
  .home-cip-flow { gap:0 !important; padding:14px !important; }
  .home-cip-flow div { min-height:82px !important; padding:14px 16px !important; }
  .home-cip-flow div strong { margin:12px 0 5px !important; font-size:24px !important; }
  .home-cip-flow > i { height:14px !important; }

  /* L1 distribution cards become compact editorial rows. */
  .l1-asset-stage > .l1-side-metric,
  .l1-side-metric {
    display:grid !important;
    grid-template-columns:42px minmax(120px,.75fr) minmax(0,1.25fr) !important;
    grid-template-rows:auto auto !important;
    align-items:center !important;
    gap:4px 12px !important;
    min-height:0 !important;
    height:auto !important;
    padding:20px 18px !important;
  }
  .l1-side-metric-icon {
    grid-column:1 !important;
    grid-row:1/3 !important;
    position:static !important;
    width:38px !important;
    height:38px !important;
    margin:0 !important;
  }
  .l1-side-metric strong {
    grid-column:2 !important;
    grid-row:1 !important;
    margin:0 !important;
    font-size:clamp(48px,15vw,64px) !important;
    line-height:.9 !important;
  }
  .l1-side-metric > span {
    grid-column:2 !important;
    grid-row:2 !important;
    margin:5px 0 0 !important;
    font-size:7px !important;
    line-height:1.3 !important;
  }
  .l1-side-metric p {
    grid-column:3 !important;
    grid-row:1/3 !important;
    align-self:center !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 0 0 14px !important;
    border-left:1px solid var(--line) !important;
    font-size:12px !important;
    line-height:1.5 !important;
  }
  .l1-side-metric .l1-metric-divider { display:none !important; }
  .l1-role-card { min-height:0 !important; padding:20px 18px !important; }

  /* Verification cards and general boxed sequences. */
  .ai-verification-steps > div { min-height:88px !important; padding:15px 16px !important; }
  .ai-verification-steps b { margin:12px 0 4px !important; font-size:21px !important; }
  .ai-verification-steps > i { height:14px !important; }

  /* Buttons remain substantial but do not dominate the viewport. */
  .home-brief-actions .button { min-height:58px !important; padding:0 18px !important; font-size:14px !important; }
}

@media (max-width: 430px) {
  .section-frame { width:calc(100% - 24px) !important; }
  .l1-asset-stage > .l1-side-metric,
  .l1-side-metric {
    grid-template-columns:36px minmax(100px,.72fr) minmax(0,1.28fr) !important;
    gap:4px 9px !important;
    padding:17px 14px !important;
  }
  .l1-side-metric-icon { width:34px !important; height:34px !important; }
  .l1-side-metric strong { font-size:50px !important; }
  .l1-side-metric p { padding-left:10px !important; font-size:11px !important; }
  .home-agent-api-console code { font-size:10.5px !important; }
}

/* ==========================================================
   GenesisL1 v16.6 — precise phone-card correction
   Fixes metric overlap and compact pipeline icon geometry.
   Desktop and tablet layouts above 760px remain unchanged.
   ========================================================== */
@media (max-width: 760px) {
  /* Molecular pipeline: preserve the scientific illustration without allowing
     its desktop-sized internal geometry to spill into the labels. */
  .home-short .home-bio-flow,
  .home-bio-flow {
    min-height: 0 !important;
    padding: 10px !important;
  }
  .home-bio-node {
    min-height: 94px !important;
    padding: 13px 14px !important;
    grid-template-columns: 24px 68px minmax(0,1fr) !important;
    grid-template-rows: 1fr auto !important;
    column-gap: 10px !important;
    overflow: hidden !important;
  }
  .home-bio-node > span {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    padding-top: 3px !important;
  }
  .home-bio-glyph {
    grid-column: 2 !important;
    grid-row: 1 / 3 !important;
    width: 64px !important;
    height: 64px !important;
    margin: 0 !important;
    align-self: center !important;
    overflow: hidden !important;
  }
  .home-bio-node strong {
    grid-column: 3 !important;
    grid-row: 1 !important;
    align-self: end !important;
    margin: 0 0 4px !important;
    font-size: 25px !important;
    line-height: 1 !important;
    letter-spacing: -.025em !important;
  }
  .home-bio-node small {
    grid-column: 3 !important;
    grid-row: 2 !important;
    align-self: start !important;
    margin: 0 !important;
    font-size: 8px !important;
    line-height: 1.2 !important;
  }
  .molecule-glyph i { width:9px !important; height:9px !important; }
  .molecule-glyph i:nth-child(1){left:13px !important;top:31px !important}
  .molecule-glyph i:nth-child(2){left:28px !important;top:14px !important}
  .molecule-glyph i:nth-child(3){right:10px !important;top:28px !important}
  .molecule-glyph i:nth-child(4){left:31px !important;bottom:9px !important}
  .molecule-glyph b:nth-of-type(1){width:23px !important;left:20px !important;top:35px !important;transform:rotate(-48deg) !important}
  .molecule-glyph b:nth-of-type(2){width:20px !important;left:35px !important;top:22px !important;transform:rotate(35deg) !important}
  .molecule-glyph b:nth-of-type(3){width:21px !important;left:39px !important;top:35px !important;transform:rotate(119deg) !important}
  .sequence-glyph i { left:14px !important; right:14px !important; }
  .sequence-glyph i:nth-child(1){top:17px !important}.sequence-glyph i:nth-child(2){top:25px !important}.sequence-glyph i:nth-child(3){top:32px !important}.sequence-glyph i:nth-child(4){top:40px !important}.sequence-glyph i:nth-child(5){top:47px !important}
  .sequence-glyph::before,.sequence-glyph::after{top:13px !important;bottom:13px !important}
  .sequence-glyph::before{left:17px !important}.sequence-glyph::after{right:17px !important}
  .model-glyph i { width:6px !important; height:6px !important; }
  .model-glyph i:nth-child(1){left:29px !important;top:12px !important}.model-glyph i:nth-child(2){left:15px !important;top:35px !important}.model-glyph i:nth-child(3){right:15px !important;top:35px !important}.model-glyph i:nth-child(4){left:29px !important;bottom:9px !important}
  .model-glyph::before,.model-glyph::after{left:20px !important;top:30px !important;width:24px !important}
  .result-glyph b { font-size:25px !important; }
  .result-glyph i { left:16px !important; right:16px !important; bottom:14px !important; }
  .home-flow-line { height: 16px !important; }
  .home-panel-foot { padding: 14px 16px !important; }

  /* L1 distribution: a stable vertical editorial card. No element shares the
     same row as the large number, so copy cannot collide at any phone width. */
  .l1-asset-stage > .l1-side-metric,
  .home-short .l1-side-metric,
  .l1-side-metric {
    display: grid !important;
    grid-template-columns: 42px minmax(0,1fr) !important;
    grid-template-rows: auto auto auto !important;
    grid-template-areas:
      "icon value"
      "label label"
      "copy copy" !important;
    align-items: center !important;
    gap: 10px 14px !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 20px !important;
  }
  .l1-side-metric-icon {
    grid-area: icon !important;
    position: static !important;
    width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
  }
  .l1-side-metric strong {
    grid-area: value !important;
    margin: 0 !important;
    font-size: clamp(62px, 19vw, 82px) !important;
    line-height: .86 !important;
    letter-spacing: -.06em !important;
  }
  .l1-side-metric > span {
    grid-area: label !important;
    margin: 0 !important;
    font-size: 8px !important;
    line-height: 1.35 !important;
    letter-spacing: .12em !important;
  }
  .l1-side-metric p {
    grid-area: copy !important;
    align-self: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 13px 0 0 !important;
    border-left: 0 !important;
    border-top: 1px solid var(--line) !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
  }
  .l1-side-metric .l1-metric-divider { display: none !important; }
}

@media (max-width: 430px) {
  .home-bio-node {
    grid-template-columns: 20px 58px minmax(0,1fr) !important;
    min-height: 88px !important;
    padding: 11px 12px !important;
    column-gap: 8px !important;
  }
  .home-bio-glyph {
    width: 56px !important;
    height: 56px !important;
    transform: scale(.875) !important;
    transform-origin: center !important;
  }
  .home-bio-node strong { font-size: 22px !important; }
  .l1-asset-stage > .l1-side-metric,
  .home-short .l1-side-metric,
  .l1-side-metric { padding: 18px 16px !important; }
  .l1-side-metric strong { font-size: clamp(60px,20vw,74px) !important; }
  .l1-side-metric p { font-size: 13px !important; }
}

/* v16.8 — professional text arrows; prevent platform emoji rendering */
.whitepaper-arrow {
  position: relative;
  width: 64px;
  height: 64px;
  border-radius: 2px;
  border: 1px solid var(--line-strong);
  color: transparent;
  background: #fff;
  box-shadow: 0 12px 30px rgba(17,22,29,.08);
  font-size: 0;
  overflow: hidden;
}
.whitepaper-arrow::before,
.whitepaper-arrow::after {
  content: "";
  position: absolute;
  display: block;
}
.whitepaper-arrow::before {
  width: 22px;
  height: 22px;
  top: 18px;
  right: 18px;
  border-top: 2px solid var(--ink);
  border-right: 2px solid var(--ink);
}
.whitepaper-arrow::after {
  width: 31px;
  height: 2px;
  top: 33px;
  left: 17px;
  background: var(--ink);
  transform: rotate(-45deg);
  transform-origin: center;
}
.whitepaper-band-link:hover .whitepaper-arrow {
  color: transparent;
  background: var(--ink);
  border-color: var(--ink);
  transform: translate(3px,-3px);
}
.whitepaper-band-link:hover .whitepaper-arrow::before { border-color: #fff; }
.whitepaper-band-link:hover .whitepaper-arrow::after { background: #fff; }

/* Small action arrows stay typographic, never emoji-style. */
.button-icon,
.text-link [aria-hidden="true"],
.final-actions [aria-hidden="true"],
.home-brief-actions [aria-hidden="true"],
.eco-network-app-copy b span {
  font-family: var(--mono);
  font-variant-emoji: text;
  font-style: normal;
  line-height: 1;
}

@media (max-width: 700px) {
  .whitepaper-arrow {
    width: 48px;
    height: 48px;
  }
  .whitepaper-arrow::before {
    width: 17px;
    height: 17px;
    top: 13px;
    right: 13px;
  }
  .whitepaper-arrow::after {
    width: 25px;
    top: 25px;
    left: 12px;
  }
}


/* v16.8 — professional text arrows; prevent platform emoji rendering */
.whitepaper-arrow {
  position: relative;
  width: 64px;
  height: 64px;
  border-radius: 2px;
  border: 1px solid var(--line-strong);
  color: transparent;
  background: #fff;
  box-shadow: 0 12px 30px rgba(17,22,29,.08);
  font-size: 0;
  overflow: hidden;
}
.whitepaper-arrow::before,
.whitepaper-arrow::after {
  content: "";
  position: absolute;
  display: block;
}
.whitepaper-arrow::before {
  width: 22px;
  height: 22px;
  top: 18px;
  right: 18px;
  border-top: 2px solid var(--ink);
  border-right: 2px solid var(--ink);
}
.whitepaper-arrow::after {
  width: 31px;
  height: 2px;
  top: 33px;
  left: 17px;
  background: var(--ink);
  transform: rotate(-45deg);
  transform-origin: center;
}
.whitepaper-band-link:hover .whitepaper-arrow {
  color: transparent;
  background: var(--ink);
  border-color: var(--ink);
  transform: translate(3px,-3px);
}
.whitepaper-band-link:hover .whitepaper-arrow::before { border-color: #fff; }
.whitepaper-band-link:hover .whitepaper-arrow::after { background: #fff; }
.button-icon,
.text-link [aria-hidden="true"],
.final-actions [aria-hidden="true"],
.home-brief-actions [aria-hidden="true"],
.eco-network-app-copy b span {
  font-family: var(--mono);
  font-variant-emoji: text;
  font-style: normal;
  line-height: 1;
}
@media (max-width: 700px) {
  .whitepaper-arrow { width: 48px; height: 48px; }
  .whitepaper-arrow::before { width: 17px; height: 17px; top: 13px; right: 13px; }
  .whitepaper-arrow::after { width: 25px; top: 25px; left: 12px; }
}


/* v16.9 — exact SVG whitepaper action; remove the over-engineered CSS arrow */
.whitepaper-arrow {
  position: relative;
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  min-width: 52px;
  border: 0;
  border-radius: 0;
  color: var(--ink);
  background: transparent;
  box-shadow: none;
  overflow: visible;
  font-size: 0;
  transform: none;
  transition: color .2s ease, transform .28s cubic-bezier(.22,1,.36,1);
}
.whitepaper-arrow::before,
.whitepaper-arrow::after {
  content: none !important;
  display: none !important;
}
.whitepaper-arrow-icon {
  display: block;
  width: 31px;
  height: 31px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.55;
  stroke-linecap: square;
  stroke-linejoin: miter;
  vector-effect: non-scaling-stroke;
}
.whitepaper-band-link:hover .whitepaper-arrow,
.whitepaper-band-link:focus-visible .whitepaper-arrow {
  color: var(--blue);
  background: transparent;
  border-color: transparent;
  transform: translate(3px,-3px);
}
@media (max-width: 700px) {
  .whitepaper-arrow {
    width: 42px;
    height: 42px;
    min-width: 42px;
  }
  .whitepaper-arrow-icon {
    width: 25px;
    height: 25px;
  }
}

/* ==========================================================
   GenesisL1 v16.10 — iPad composition correction
   Restores balanced tablet layouts without altering desktop
   or phone presentation.
   ========================================================== */
@media (min-width: 761px) and (max-width: 1366px) {
  /* Native asset stage: the coin system remains the visual anchor, while
     distribution metrics become a balanced pair beneath it. */
  .l1-asset-stage {
    width: 100%;
    max-width: 980px;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-areas:
      "diagram diagram"
      "metric-a metric-b" !important;
    gap: 24px !important;
    align-items: stretch !important;
  }
  .l1-asset-stage > .l1-side-metric:first-child { grid-area: metric-a; }
  .l1-asset-stage > .l1-coin-diagram {
    grid-area: diagram;
    width: min(100%, 760px);
    min-height: 540px !important;
    margin-inline: auto;
    justify-self: center;
  }
  .l1-asset-stage > .l1-side-metric:last-child { grid-area: metric-b; }
  .l1-asset-stage > .l1-side-metric {
    min-height: 245px !important;
    padding: 28px 30px !important;
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto !important;
    align-content: start !important;
    gap: 10px 16px !important;
  }
  .l1-asset-stage > .l1-side-metric .l1-side-metric-icon {
    grid-column: 1;
    grid-row: 1 / 3;
    position: static !important;
    margin: 0 !important;
  }
  .l1-asset-stage > .l1-side-metric strong {
    grid-column: 2;
    grid-row: 1;
    margin: 0 !important;
    font-size: clamp(64px, 8vw, 88px) !important;
    line-height: .88 !important;
  }
  .l1-asset-stage > .l1-side-metric > span {
    grid-column: 2;
    grid-row: 2;
    margin: 0 !important;
  }
  .l1-asset-stage > .l1-side-metric .l1-metric-divider { display: none !important; }
  .l1-asset-stage > .l1-side-metric p {
    grid-column: 1 / -1;
    grid-row: 3;
    margin-top: 8px !important;
    padding-top: 16px;
    border-top: 1px solid var(--line);
    font-size: 15px !important;
    line-height: 1.55 !important;
  }

  /* Verifiable AI pipeline: one clean sequence rather than narrow poster cards. */
  .home-ai-pipeline {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    grid-template-rows: auto !important;
    gap: 0 !important;
    min-height: 0 !important;
    padding: 18px !important;
  }
  .home-ai-step {
    min-height: 176px !important;
    padding: 24px 20px !important;
    grid-template-columns: 26px minmax(0,1fr) !important;
    align-content: center !important;
  }
  .home-ai-step strong {
    font-size: clamp(22px, 2.5vw, 30px) !important;
    line-height: 1.02 !important;
  }
  .home-ai-step small { font-size: 8px !important; }
  .home-ai-pipeline > i {
    position: absolute !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }
  .home-ai-step:not(:last-child) { position: relative; }
  .home-ai-step:not(:last-child)::after {
    content: "";
    position: absolute;
    right: -8px;
    top: 50%;
    z-index: 2;
    width: 15px;
    height: 15px;
    border-top: 1px solid var(--blue);
    border-right: 1px solid var(--blue);
    background: #fff;
    transform: translateY(-50%) rotate(45deg);
  }

  /* Contract API panel: maintain strong copy and an orderly 2×2 console. */
  .home-agent-api { grid-template-columns: minmax(0, 1.08fr) minmax(340px, .92fr) !important; }
  .home-agent-api-copy { padding: 42px 38px !important; }
  .home-agent-api-copy h3 { font-size: clamp(42px, 5vw, 58px) !important; }
  .home-agent-api-copy p { font-size: 17px !important; line-height: 1.65 !important; }
  .home-agent-api-console { grid-template-columns: 1fr 1fr !important; }
  .home-agent-api-console > div { min-height: 148px !important; padding: 24px !important; }

  /* General tablet rhythm. */
  .section-frame { width: min(calc(100% - 64px), 1180px) !important; }
  .home-brief-actions { gap: 18px !important; }
}

@media (min-width: 761px) and (max-width: 980px) {
  .home-agent-api { grid-template-columns: 1fr !important; }
  .home-agent-api-copy { border-right: 0 !important; border-bottom: 1px solid var(--line) !important; }
  .l1-asset-stage > .l1-coin-diagram { min-height: 500px !important; }
}

/* ==========================================================
   GenesisL1 v16.11 — verified tablet composition
   This final override intentionally covers compact iPad CSS
   viewports (including Safari split/zoom widths below 761px).
   ========================================================== */
@media (min-width: 600px) and (max-width: 1200px) {
  /* L1 asset system: one centered instrument, then two equal metrics. */
  .l1-asset-stage,
  .home-short .l1-asset-stage {
    display: grid !important;
    width: 100% !important;
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: auto auto !important;
    grid-template-areas:
      "coin coin"
      "metric-one metric-two" !important;
    gap: 22px !important;
    align-items: stretch !important;
  }
  .l1-asset-stage > .l1-coin-diagram,
  .home-short .l1-asset-stage > .l1-coin-diagram {
    grid-area: coin !important;
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    justify-self: center !important;
    align-self: center !important;
    width: min(100%, 700px) !important;
    max-width: 700px !important;
    min-height: 500px !important;
    margin: 0 auto !important;
    overflow: hidden !important;
  }
  .l1-asset-stage > .l1-side-metric:first-child,
  .home-short .l1-asset-stage > .l1-side-metric:first-child {
    grid-area: metric-one !important;
    grid-column: 1 !important;
    grid-row: 2 !important;
  }
  .l1-asset-stage > .l1-side-metric:last-child,
  .home-short .l1-asset-stage > .l1-side-metric:last-child {
    grid-area: metric-two !important;
    grid-column: 2 !important;
    grid-row: 2 !important;
  }
  .l1-asset-stage > .l1-side-metric,
  .home-short .l1-asset-stage > .l1-side-metric {
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto !important;
    grid-template-areas:
      "icon number"
      "label label"
      "copy copy" !important;
    align-content: start !important;
    align-items: center !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 26px 28px !important;
    gap: 10px 16px !important;
  }
  .l1-asset-stage > .l1-side-metric .l1-side-metric-icon {
    grid-area: icon !important;
    position: static !important;
    width: 46px !important;
    height: 46px !important;
    margin: 0 !important;
  }
  .l1-asset-stage > .l1-side-metric strong {
    grid-area: number !important;
    min-width: 0 !important;
    margin: 0 !important;
    font-size: clamp(62px, 10vw, 92px) !important;
    line-height: .86 !important;
    letter-spacing: -.065em !important;
    white-space: nowrap !important;
  }
  .l1-asset-stage > .l1-side-metric > span {
    grid-area: label !important;
    margin: 0 !important;
    font-size: 9px !important;
    line-height: 1.35 !important;
    letter-spacing: .12em !important;
  }
  .l1-asset-stage > .l1-side-metric .l1-metric-divider { display: none !important; }
  .l1-asset-stage > .l1-side-metric p {
    grid-area: copy !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 15px 0 0 !important;
    border: 0 !important;
    border-top: 1px solid var(--line) !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
  }

  /* Four-stage model pipeline: one continuous horizontal sequence. */
  .home-ai-pipeline {
    position: relative !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    grid-template-rows: auto !important;
    grid-auto-flow: row !important;
    width: 100% !important;
    min-height: 0 !important;
    padding: 18px !important;
    gap: 18px !important;
  }
  .home-ai-pipeline > i { display: none !important; }
  .home-ai-step {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    grid-template-rows: auto 1fr auto !important;
    min-width: 0 !important;
    min-height: 176px !important;
    height: auto !important;
    padding: 22px 18px !important;
    align-content: center !important;
  }
  .home-ai-step:not(:last-of-type)::after {
    content: "" !important;
    position: absolute !important;
    right: -14px !important;
    top: 50% !important;
    z-index: 3 !important;
    width: 10px !important;
    height: 10px !important;
    border-top: 1px solid var(--blue) !important;
    border-right: 1px solid var(--blue) !important;
    background: transparent !important;
    transform: translateY(-50%) rotate(45deg) !important;
  }
  .home-ai-step strong {
    min-width: 0 !important;
    font-size: clamp(22px, 3vw, 31px) !important;
    line-height: 1.02 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
  .home-ai-step small { font-size: 8px !important; line-height: 1.35 !important; }

  /* Contract API: avoid a squeezed two-column poster on portrait tablets. */
  .home-agent-api {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
  .home-agent-api-copy {
    padding: 38px 34px !important;
    border-right: 0 !important;
    border-bottom: 1px solid var(--line) !important;
  }
  .home-agent-api-copy h3 { font-size: clamp(40px, 6vw, 58px) !important; }
  .home-agent-api-copy p { max-width: 800px !important; font-size: 17px !important; line-height: 1.65 !important; }
  .home-agent-api-console {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .home-agent-api-console > div {
    min-height: 132px !important;
    padding: 24px !important;
  }
}

@media (min-width: 600px) and (max-width: 760px) {
  /* Compact iPad / split-view: full-width metric cards prevent narrow columns. */
  .l1-asset-stage,
  .home-short .l1-asset-stage {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "coin"
      "metric-one"
      "metric-two" !important;
  }
  .l1-asset-stage > .l1-side-metric:first-child,
  .home-short .l1-asset-stage > .l1-side-metric:first-child {
    grid-column: 1 !important;
    grid-row: 2 !important;
  }
  .l1-asset-stage > .l1-side-metric:last-child,
  .home-short .l1-asset-stage > .l1-side-metric:last-child {
    grid-column: 1 !important;
    grid-row: 3 !important;
  }
  .l1-asset-stage > .l1-side-metric,
  .home-short .l1-asset-stage > .l1-side-metric {
    grid-template-columns: 48px minmax(0, 180px) minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    grid-template-areas:
      "icon number copy"
      "icon label copy" !important;
    min-height: 190px !important;
  }
  .l1-asset-stage > .l1-side-metric p {
    padding: 0 0 0 18px !important;
    border-top: 0 !important;
    border-left: 1px solid var(--line) !important;
    align-self: stretch !important;
    display: flex !important;
    align-items: center !important;
  }
  .home-ai-pipeline {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }
  .home-ai-step:not(:last-of-type)::after { display: none !important; }
}
