:root {
  --bg: #f7f7f5;
  --bg-2: #f1f2f0;
  --panel: rgba(255,255,255,.74);
  --panel-solid: #ffffff;
  --ink: #0c0d0e;
  --muted: #676c72;
  --line: rgba(15,18,20,.10);
  --line-strong: rgba(15,18,20,.17);
  --shadow: 0 24px 80px rgba(24,28,31,.08);
  --radius: 28px;
  --radius-sm: 18px;
  --accent: #171a1d;
  --accent-soft: #dfe2df;
  --max: 1240px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: var(--bg);
  color: var(--ink);
  overflow-x: hidden;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(8,10,12,.022) 1px, transparent 1px),
    linear-gradient(90deg, rgba(8,10,12,.022) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.5), transparent 80%);
  z-index: -4;
}

a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }

.page-progress {
  position: fixed;
  top: 0;
  left: 0;
  height: 2px;
  width: 0;
  background: #111416;
  z-index: 100;
}

.grain {
  position: fixed;
  inset: 0;
  opacity: .04;
  pointer-events: none;
  z-index: -2;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.34'/%3E%3C/svg%3E");
}

.ambient {
  position: fixed;
  width: 540px;
  height: 540px;
  border-radius: 50%;
  filter: blur(80px);
  opacity: .18;
  pointer-events: none;
  z-index: -3;
  animation: drift 18s ease-in-out infinite alternate;
}
.ambient-a { top: -140px; left: -160px; background: #cfd6d2; }
.ambient-b { right: -220px; top: 36%; background: #d9dce0; animation-delay: -7s; }

.topbar {
  position: sticky;
  top: 0;
  z-index: 50;
  width: min(calc(100% - 32px), 1280px);
  margin: 12px auto 0;
  padding: 12px 14px 12px 16px;
  border: 1px solid rgba(15,18,20,.09);
  background: rgba(247,247,245,.74);
  backdrop-filter: blur(18px) saturate(140%);
  border-radius: 18px;
  display: flex;
  align-items: center;
  gap: 28px;
  box-shadow: 0 8px 32px rgba(20,22,24,.05);
}
.brand { display:flex; align-items:center; gap:11px; min-width:240px; }
.brand-mark {
  width: 34px; height: 34px; border-radius: 11px; background: #111416; color: #fff;
  display:grid; place-items:center; font-family: Manrope, sans-serif; font-weight:800;
}
.brand-copy { display:flex; flex-direction:column; gap:2px; }
.brand-copy strong { font-size: 13px; letter-spacing:.12em; }
.brand-copy small { color: var(--muted); font-size: 11px; }
.desktop-nav { flex:1; display:flex; justify-content:center; gap:24px; }
.desktop-nav a { font-size: 12px; color: #4d5257; transition:.25s ease; }
.desktop-nav a:hover { color:#111416; }
.nav-cta {
  font-size: 12px; font-weight: 700; background: #111416; color:#fff; padding:11px 14px; border-radius:12px;
  transition: transform .25s ease, box-shadow .25s ease;
}
.nav-cta:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(0,0,0,.12); }

.section-shell { width: min(calc(100% - 40px), var(--max)); margin-inline:auto; }
.hero { min-height: 86vh; display:flex; align-items:center; padding: 92px 0 70px; }
.hero-grid { display:grid; grid-template-columns: 1.08fr .92fr; gap: 70px; align-items:center; width:100%; }
.eyebrow { display:flex; align-items:center; gap:10px; color:#5f6469; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.14em; }
.eyebrow span { width:22px; height:1px; background:#1a1c1f; }
.hero h1, .section-head h2, .split-head h2, .closing-inner h2 {
  font-family: Manrope, Inter, sans-serif;
  letter-spacing: -.045em;
  margin: 0;
}
.hero h1 { font-size: clamp(54px, 7vw, 104px); line-height:.93; margin-top:22px; max-width:840px; }
.hero h1 span { color:#8b9094; font-weight:600; }
.hero-lede { max-width:760px; margin:26px 0 0; font-size:18px; line-height:1.75; color:#5e6368; }
.hero-actions { display:flex; gap:12px; margin-top:34px; }
.btn { display:inline-flex; align-items:center; justify-content:center; padding:14px 18px; border-radius:14px; font-size:13px; font-weight:700; transition:.25s ease; }
.btn-dark { background:#111416; color:#fff; box-shadow:0 14px 34px rgba(0,0,0,.12); }
.btn-dark:hover { transform:translateY(-2px); box-shadow:0 18px 40px rgba(0,0,0,.16); }
.btn-ghost { border:1px solid var(--line-strong); background:rgba(255,255,255,.55); }
.btn-ghost:hover { background:#fff; transform:translateY(-2px); }
.hero-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:42px; max-width:760px; }
.hero-metrics article { padding:18px 16px; border:1px solid var(--line); background:rgba(255,255,255,.58); border-radius:18px; backdrop-filter: blur(10px); }
.hero-metrics small { display:block; color:var(--muted); font-size:11px; margin-bottom:8px; }
.hero-metrics strong { font-size:21px; letter-spacing:-.03em; }

.hero-visual { display:flex; flex-direction:column; gap:14px; align-items:center; }
.orbital-card {
  position:relative; width:min(100%, 520px); aspect-ratio:1/1; border:1px solid var(--line); border-radius:50%;
  background: radial-gradient(circle at center, rgba(255,255,255,.98) 0 19%, rgba(245,246,244,.86) 20% 47%, rgba(237,239,237,.56) 48% 68%, rgba(255,255,255,.18) 69% 100%);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.7), 0 28px 80px rgba(20,24,27,.09);
  animation: floaty 7s ease-in-out infinite;
}
.orbit { position:absolute; inset:11%; border:1px solid rgba(24,28,30,.12); border-radius:50%; }
.orbit-2 { inset:25%; border-style:dashed; animation:spin 18s linear infinite; }
.orbit-3 { inset:38%; border-color:rgba(24,28,30,.22); animation:spinReverse 13s linear infinite; }
.core-node { position:absolute; inset:50% auto auto 50%; transform:translate(-50%,-50%); width:118px; height:118px; border-radius:50%; background:#111416; color:#fff; display:flex; flex-direction:column; align-items:center; justify-content:center; box-shadow:0 18px 40px rgba(0,0,0,.18); }
.core-node span { font:800 27px/1 Manrope,sans-serif; letter-spacing:-.04em; }
.core-node small { font-size:11px; color:#b8bdc1; margin-top:7px; }
.floating-node { position:absolute; padding:10px 12px; border-radius:12px; border:1px solid rgba(20,22,24,.12); background:rgba(255,255,255,.88); backdrop-filter:blur(10px); font-size:11px; font-weight:700; box-shadow:0 10px 30px rgba(20,22,24,.07); }
.node-a { left:8%; top:28%; animation:nodePulse 4s ease-in-out infinite; }
.node-b { right:5%; top:22%; animation:nodePulse 4.5s ease-in-out infinite .4s; }
.node-c { right:8%; bottom:22%; animation:nodePulse 5s ease-in-out infinite .8s; }
.node-d { left:9%; bottom:20%; animation:nodePulse 4.3s ease-in-out infinite 1.1s; }
.signal-line { position:absolute; left:50%; top:50%; width:42%; height:1px; background:linear-gradient(90deg, rgba(20,22,24,.4), transparent); transform-origin:left center; opacity:.7; }
.signal-1 { transform:rotate(31deg); animation:signal 3.2s ease-in-out infinite; }
.signal-2 { transform:rotate(211deg); animation:signal 3.2s ease-in-out infinite .8s; }
.visual-caption { font-size:11px; color:#686d72; display:flex; gap:8px; align-items:center; }
.dot-live { width:7px; height:7px; background:#111416; border-radius:50%; box-shadow:0 0 0 6px rgba(17,20,22,.08); animation:blink 2s ease-in-out infinite; }

.thesis-section { padding: 110px 0 40px; }
.section-head { max-width:900px; }
.section-head h2 { font-size:clamp(40px,5.5vw,72px); line-height:1.02; margin-top:18px; }
.section-head p { margin:20px 0 0; max-width:760px; color:var(--muted); font-size:17px; line-height:1.7; }
.thesis-flow { margin-top:42px; padding:22px; border:1px solid var(--line); border-radius:24px; background:rgba(255,255,255,.58); display:flex; align-items:center; gap:12px; overflow:auto; box-shadow:var(--shadow); }
.flow-node { white-space:nowrap; padding:14px 16px; border:1px solid var(--line); border-radius:14px; background:#fff; font-size:13px; font-weight:700; }
.flow-node.strong { background:#111416; color:#fff; }
.thesis-flow i { font-style:normal; color:#9da1a5; }

.section-block { padding:130px 0 30px; }
.split-head { display:grid; grid-template-columns:1.15fr .85fr; gap:60px; align-items:end; }
.split-head h2 { font-size:clamp(40px,5vw,68px); line-height:1.04; margin-top:10px; }
.split-head p { margin:0 0 7px; color:var(--muted); font-size:16px; line-height:1.7; }
.chapter-tag { font-size:11px; font-weight:800; letter-spacing:.14em; color:#72777c; }

.allocation-grid { display:grid; grid-template-columns:1.45fr 1fr 1fr; gap:16px; margin-top:44px; }
.allocation-card { padding:28px; border:1px solid var(--line); border-radius:26px; background:rgba(255,255,255,.72); min-height:280px; display:flex; flex-direction:column; box-shadow:0 18px 55px rgba(20,24,27,.05); transition:.3s ease; }
.allocation-card:hover { transform:translateY(-5px); box-shadow:0 26px 70px rgba(20,24,27,.09); }
.allocation-primary { background:#111416; color:#fff; }
.allocation-primary p { color:#bac0c4 !important; }
.allocation-primary .allocation-amt { color:#d9dde0; }
.allocation-primary .allocation-bar { background:rgba(255,255,255,.10); }
.allocation-primary .allocation-bar span { background:#fff; }
.allocation-top { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }
.allocation-pct { font:700 13px/1 Inter,sans-serif; letter-spacing:.08em; }
.allocation-amt { color:#666c71; font-size:12px; }
.allocation-card h3 { font:700 26px/1.15 Manrope,sans-serif; letter-spacing:-.03em; margin:30px 0 14px; }
.allocation-card p { color:var(--muted); line-height:1.65; font-size:14px; margin:0; }
.allocation-bar { margin-top:auto; height:5px; border-radius:100px; background:#eceeeb; overflow:hidden; }
.allocation-bar span { display:block; height:100%; background:#151719; border-radius:inherit; transform-origin:left center; animation:growBar 1.4s cubic-bezier(.2,.7,.2,1) both; }
.capital-visual { margin-top:22px; padding:22px; border:1px solid var(--line); border-radius:22px; background:rgba(255,255,255,.5); }
.stacked-track { display:flex; height:18px; border-radius:999px; overflow:hidden; background:#e6e7e5; }
.seg { display:grid; place-items:center; font-size:0; }
.seg-50 { width:50%; background:#16191c; }
.seg-30 { width:30%; background:#92979b; }
.seg-20 { width:20%; background:#d5d8d5; }
.legend { display:flex; gap:24px; flex-wrap:wrap; margin-top:14px; color:#666c71; font-size:12px; }
.legend span { display:flex; align-items:center; gap:7px; }
.legend-dot { width:8px; height:8px; border-radius:50%; display:inline-block; }
.l1{background:#16191c}.l2{background:#92979b}.l3{background:#d5d8d5}

.capability-split { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:44px; }
.deep-card { padding:30px; border-radius:28px; background:rgba(255,255,255,.76); border:1px solid var(--line); box-shadow:0 18px 60px rgba(20,24,27,.05); }
.deep-card-head { display:flex; gap:14px; align-items:center; }
.icon-chip { width:42px; height:42px; display:grid; place-items:center; border-radius:13px; background:#eef0ee; border:1px solid var(--line); font-size:12px; font-weight:800; }
.deep-card-head small { color:#777c80; font-size:11px; }
.deep-card-head h3 { margin:5px 0 0; font:800 36px/1 Manrope,sans-serif; letter-spacing:-.04em; }
.cost-list { margin-top:28px; display:grid; gap:2px; }
.cost-list div { padding:13px 0; border-bottom:1px solid var(--line); display:flex; justify-content:space-between; gap:12px; font-size:13px; }
.cost-list div span { color:#555b60; }
.cost-list div b { font-size:13px; }
.card-note { margin-top:24px; padding:14px 15px; border-radius:14px; background:#f1f2ef; font-size:12px; color:#666b70; line-height:1.55; }
.pill-cloud { display:flex; flex-wrap:wrap; gap:8px; margin-top:28px; }
.pill-cloud span { padding:10px 11px; background:#f2f3f1; border:1px solid rgba(15,18,20,.07); border-radius:999px; font-size:11px; font-weight:700; }
.knowledge-pipeline { margin-top:22px; padding:24px; border-radius:26px; border:1px solid var(--line); background:rgba(255,255,255,.55); display:grid; grid-template-columns:1fr 48px 1fr 48px 1fr 48px 1fr 48px 1fr; align-items:center; }
.pipeline-node { padding:17px; border-radius:18px; background:#fff; border:1px solid var(--line); min-height:122px; display:flex; flex-direction:column; justify-content:center; }
.pipeline-node small { color:#8a8f93; font-size:10px; }
.pipeline-node strong { margin-top:7px; font:700 15px/1.2 Manrope,sans-serif; }
.pipeline-node span { color:#7a7f83; font-size:11px; margin-top:5px; }
.pipeline-node.final { background:#111416; color:#fff; }
.pipeline-node.final span,.pipeline-node.final small { color:#b7bdc1; }
.pipeline-link { height:1px; background:linear-gradient(90deg,#babfc2,#e6e8e6); position:relative; overflow:hidden; }
.pipeline-link::after { content:""; position:absolute; width:30%; inset:0 auto 0 -30%; background:#111416; animation:travel 2.6s linear infinite; }

.transition-band { margin-top:120px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(240,242,240,.75)); }
.transition-inner { padding:62px 0; text-align:center; }
.transition-inner small { color:#777c80; text-transform:uppercase; letter-spacing:.16em; font-size:10px; font-weight:800; }
.transition-inner h2 { font:700 clamp(31px,4.3vw,58px)/1.05 Manrope,sans-serif; letter-spacing:-.04em; margin:14px 0 22px; }
.moving-line { width:min(540px,80%); height:2px; background:#d9dcda; margin:0 auto; overflow:hidden; border-radius:999px; }
.moving-line span { display:block; width:25%; height:100%; background:#111416; animation:travelWide 3s ease-in-out infinite; }

.revenue-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:44px; }
.revenue-card { padding:26px; min-height:292px; border:1px solid var(--line); border-radius:24px; background:rgba(255,255,255,.72); display:flex; flex-direction:column; transition:.3s ease; }
.revenue-card:hover { transform:translateY(-5px) scale(1.005); box-shadow:0 24px 60px rgba(20,24,27,.08); }
.revenue-card-dark { background:#111416; color:#fff; }
.revenue-card-dark p { color:#b9bec2 !important; }
.revenue-no { width:38px; height:38px; border-radius:12px; display:grid; place-items:center; background:#eff1ef; color:#585d62; font-size:11px; font-weight:800; }
.revenue-card-dark .revenue-no { background:rgba(255,255,255,.09); color:#fff; }
.revenue-card h3 { margin:26px 0 12px; font:700 24px/1.15 Manrope,sans-serif; letter-spacing:-.03em; }
.revenue-card p { margin:0; color:#686d72; font-size:13px; line-height:1.65; }
.revenue-tags { display:flex; flex-wrap:wrap; gap:7px; margin-top:auto; padding-top:22px; }
.revenue-tags span { padding:8px 9px; border-radius:999px; border:1px solid var(--line); font-size:10px; color:#656b70; }
.revenue-card-dark .revenue-tags span { border-color:rgba(255,255,255,.12); color:#c5c9cc; }
.mini-flow { display:flex; gap:5px; margin-top:auto; }
.mini-flow i { height:5px; flex:1; border-radius:99px; background:rgba(255,255,255,.14); position:relative; overflow:hidden; }
.mini-flow i::after { content:""; position:absolute; inset:0; background:#fff; transform:scaleX(0); transform-origin:left; animation:miniGrow 3s ease-in-out infinite; }
.mini-flow i:nth-child(2)::after{animation-delay:.2s}.mini-flow i:nth-child(3)::after{animation-delay:.4s}.mini-flow i:nth-child(4)::after{animation-delay:.6s}.mini-flow i:nth-child(5)::after{animation-delay:.8s}

.flywheel-section { padding:90px 0 10px; }
.flywheel-wrap { display:grid; grid-template-columns:.88fr 1.12fr; gap:50px; align-items:center; padding:36px; border-radius:30px; border:1px solid var(--line); background:linear-gradient(140deg,rgba(255,255,255,.84),rgba(238,240,238,.72)); overflow:hidden; }
.flywheel-copy h2 { font:700 clamp(34px,4vw,54px)/1.05 Manrope,sans-serif; letter-spacing:-.04em; margin:10px 0 16px; }
.flywheel-copy p { color:#686d72; line-height:1.7; font-size:14px; max-width:520px; }
.flywheel-visual { position:relative; aspect-ratio:1/1; min-height:430px; }
.wheel-ring { position:absolute; border-radius:50%; border:1px solid rgba(20,22,24,.12); inset:14%; }
.ring-a { animation:spin 25s linear infinite; }
.ring-b { inset:29%; border-style:dashed; animation:spinReverse 15s linear infinite; }
.wheel-center { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:104px; height:104px; border-radius:50%; display:grid; place-items:center; background:#111416; color:#fff; font-weight:800; letter-spacing:.08em; box-shadow:0 18px 42px rgba(0,0,0,.15); }
.wheel-item { position:absolute; padding:9px 11px; border:1px solid var(--line); background:rgba(255,255,255,.92); border-radius:11px; font-size:10px; font-weight:700; box-shadow:0 10px 30px rgba(20,24,27,.07); }
.wi1{left:4%;top:23%}.wi2{right:3%;top:16%}.wi3{right:2%;bottom:22%}.wi4{left:6%;bottom:15%}.wi5{left:42%;top:3%}

.impact-ladder { display:flex; gap:10px; align-items:stretch; margin-top:44px; overflow:auto; padding-bottom:4px; }
.impact-step { min-width:190px; flex:1; border:1px solid var(--line); border-radius:22px; padding:20px; background:rgba(255,255,255,.72); }
.impact-step span { font-size:10px; color:#898e92; font-weight:800; }
.impact-step strong { display:block; margin-top:30px; font:700 18px/1.2 Manrope,sans-serif; }
.impact-step small { display:block; margin-top:7px; color:#777c80; }
.impact-arrow { display:grid; place-items:center; color:#adb1b4; min-width:18px; }
.impact-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:18px; }
.impact-card { padding:22px; border:1px solid var(--line); border-radius:20px; background:rgba(255,255,255,.55); }
.impact-card small { color:#8b9094; font-size:10px; text-transform:uppercase; letter-spacing:.1em; }
.impact-card h3 { margin:22px 0 9px; font:700 18px/1.25 Manrope,sans-serif; }
.impact-card p { margin:0; color:#74797e; font-size:12px; line-height:1.6; }
.institutional-card { margin-top:22px; border-radius:26px; background:#111416; color:#fff; padding:30px; display:grid; grid-template-columns:.9fr 1.1fr; gap:40px; align-items:center; }
.institutional-card .eyebrow { color:#b7bcc0; }
.institutional-card .eyebrow span { background:#fff; }
.institutional-card h3 { font:700 30px/1.15 Manrope,sans-serif; letter-spacing:-.03em; margin:12px 0 0; }
.institutional-card p { margin:0; color:#bcc1c5; line-height:1.7; font-size:13px; }

.valuation-section { padding-bottom:80px; }
.timeline { margin-top:46px; position:relative; display:grid; grid-template-columns:repeat(6,1fr); gap:10px; }
.timeline-track { position:absolute; left:5%; right:5%; top:25px; height:1px; background:#d8dbd8; }
.timeline-item { position:relative; padding-top:52px; text-align:center; }
.timeline-item::before { content:""; position:absolute; width:12px; height:12px; border-radius:50%; background:#c7cbc8; border:4px solid var(--bg); top:18px; left:50%; transform:translateX(-50%); z-index:1; }
.timeline-item.active::before { background:#111416; box-shadow:0 0 0 5px rgba(17,20,22,.06); }
.timeline-item span { display:block; font-size:10px; color:#858a8e; text-transform:uppercase; letter-spacing:.08em; }
.timeline-item strong { display:block; margin-top:7px; font:700 16px/1.1 Manrope,sans-serif; }
.timeline-item small { display:block; margin-top:5px; color:#80858a; font-size:10px; }
.scenario-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:42px; }
.scenario-card { position:relative; overflow:hidden; padding:28px; border:1px solid var(--line); border-radius:26px; background:rgba(255,255,255,.72); min-height:430px; box-shadow:0 18px 60px rgba(20,24,27,.05); }
.scenario-card::after { content:""; position:absolute; width:180px; height:180px; border-radius:50%; background:radial-gradient(circle,rgba(17,20,22,.08),transparent 70%); right:-60px; top:-60px; opacity:.6; }
.scenario-highlight { background:linear-gradient(180deg,#fff,#eef0ee); }
.scenario-breakout { background:#111416; color:#fff; }
.scenario-breakout p,.scenario-breakout li { color:#bcc1c5 !important; }
.scenario-label { font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.11em; color:#7a7f83; }
.scenario-breakout .scenario-label { color:#d2d6d8; }
.scenario-card h3 { font:800 clamp(34px,4vw,56px)/1 Manrope,sans-serif; letter-spacing:-.045em; margin:28px 0 12px; }
.scenario-card p { color:#71767b; font-size:13px; line-height:1.6; }
.scenario-card ul { margin:24px 0 0; padding:0; list-style:none; display:grid; gap:12px; }
.scenario-card li { color:#5f656a; font-size:12px; padding-left:16px; position:relative; }
.scenario-card li::before { content:""; width:5px; height:5px; border-radius:50%; background:currentColor; position:absolute; left:0; top:.55em; opacity:.6; }
.value-drivers { margin-top:20px; padding:28px; border-radius:26px; border:1px solid var(--line); background:rgba(255,255,255,.52); display:grid; grid-template-columns:.72fr 1.28fr; gap:30px; }
.value-driver-head h3 { font:700 28px/1.15 Manrope,sans-serif; letter-spacing:-.03em; margin:10px 0 0; }
.driver-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.driver-grid span { padding:14px; border-radius:14px; border:1px solid var(--line); background:#fff; font-size:12px; font-weight:700; }

.investor-table { margin-top:42px; border:1px solid var(--line); border-radius:24px; overflow:hidden; background:rgba(255,255,255,.68); }
.table-row { display:grid; grid-template-columns:1fr 1fr 1fr; gap:20px; padding:18px 22px; border-bottom:1px solid var(--line); align-items:center; }
.table-row:last-child { border-bottom:0; }
.table-head { background:#eff1ef; color:#777c80; font-size:10px; text-transform:uppercase; letter-spacing:.11em; font-weight:800; }
.table-row strong { font:700 20px/1 Manrope,sans-serif; letter-spacing:-.03em; }
.table-row span { color:#74797e; font-size:12px; }
.table-row-emphasis { background:#111416; color:#fff; }
.table-row-emphasis span { color:#c0c5c8; }
.disclaimer { margin:14px 4px 0; color:#8a8f93; font-size:10px; line-height:1.6; }
.gates-wrap { margin-top:54px; }
.gates-wrap h3 { margin:10px 0 22px; font:700 34px/1.15 Manrope,sans-serif; letter-spacing:-.03em; }
.gates-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.gates-grid div { min-height:116px; padding:18px; border-radius:18px; border:1px solid var(--line); background:rgba(255,255,255,.6); display:flex; flex-direction:column; justify-content:space-between; }
.gates-grid span { font-size:10px; color:#94999d; }
.gates-grid strong { font:700 15px/1.3 Manrope,sans-serif; }

.closing-section { margin-top:130px; background:#0f1113; color:#fff; position:relative; overflow:hidden; }
.closing-section::before { content:""; position:absolute; width:760px; height:760px; border-radius:50%; border:1px solid rgba(255,255,255,.06); right:-240px; top:-280px; box-shadow:0 0 0 90px rgba(255,255,255,.018),0 0 0 180px rgba(255,255,255,.01); }
.closing-inner { padding:110px 0; position:relative; z-index:1; }
.eyebrow.light { color:#aeb4b8; }
.eyebrow.light span { background:#fff; }
.closing-inner h2 { font-size:clamp(44px,6.2vw,84px); line-height:1.03; margin-top:20px; max-width:1100px; }
.closing-inner h2 span { color:#aeb4b8; }
.closing-flow { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin-top:40px; color:#bec3c6; font-size:12px; }
.closing-flow i { font-style:normal; color:#5f666b; }
.closing-flow span { padding:10px 12px; border-radius:999px; border:1px solid rgba(255,255,255,.10); }

.footer { display:flex; justify-content:space-between; gap:30px; padding:28px 0 38px; color:#777c80; font-size:11px; }
.footer div { display:flex; gap:10px; align-items:center; }
.footer strong { color:#202326; }
.footer p { margin:0; text-align:right; max-width:520px; }

.reveal { opacity:0; transform:translateY(26px); transition:opacity .85s cubic-bezier(.2,.7,.2,1), transform .85s cubic-bezier(.2,.7,.2,1); }
.reveal.in-view { opacity:1; transform:none; }
.delay-1 { transition-delay:.12s; }
.delay-2 { transition-delay:.22s; }

@keyframes drift { to { transform: translate3d(80px, 60px, 0) scale(1.08); } }
@keyframes floaty { 50% { transform:translateY(-10px) rotate(.5deg); } }
@keyframes spin { to { transform:rotate(360deg); } }
@keyframes spinReverse { to { transform:rotate(-360deg); } }
@keyframes nodePulse { 50% { transform:translateY(-5px); box-shadow:0 14px 34px rgba(20,24,27,.10); } }
@keyframes signal { 0%,100%{opacity:.2;transform-origin:left center} 50%{opacity:.8} }
@keyframes blink { 50% { opacity:.42; box-shadow:0 0 0 10px rgba(17,20,22,.035); } }
@keyframes growBar { from { transform:scaleX(0); } to { transform:scaleX(1); } }
@keyframes travel { from { left:-30%; } to { left:100%; } }
@keyframes travelWide { 0% { transform:translateX(-120%); } 50% { transform:translateX(380%); } 100% { transform:translateX(-120%); } }
@keyframes miniGrow { 0%,20%{transform:scaleX(0)} 55%,100%{transform:scaleX(1)} }

@media (max-width: 1080px) {
  .desktop-nav { display:none; }
  .topbar { justify-content:space-between; }
  .brand { min-width:0; }
  .hero-grid { grid-template-columns:1fr; gap:54px; }
  .hero { padding-top:80px; }
  .hero-visual { max-width:640px; margin-inline:auto; width:100%; }
  .allocation-grid { grid-template-columns:1fr 1fr; }
  .allocation-primary { grid-column:1 / -1; }
  .revenue-grid { grid-template-columns:repeat(2,1fr); }
  .impact-grid { grid-template-columns:repeat(2,1fr); }
  .scenario-grid { grid-template-columns:1fr; }
  .scenario-card { min-height:0; }
  .gates-grid { grid-template-columns:repeat(2,1fr); }
  .knowledge-pipeline { grid-template-columns:1fr; gap:10px; }
  .pipeline-link { width:1px; height:28px; margin:0 auto; }
  .pipeline-link::after { width:100%; height:30%; left:0; top:-30%; animation:travelVertical 2.6s linear infinite; }
  .timeline { grid-template-columns:repeat(3,1fr); row-gap:24px; }
  .timeline-track { display:none; }
  .timeline-item::before { display:none; }
  .timeline-item { padding-top:0; }
}

@media (max-width: 760px) {
  .section-shell { width:min(calc(100% - 24px), var(--max)); }
  .topbar { width:calc(100% - 18px); margin-top:9px; }
  .brand-copy small { display:none; }
  .nav-cta { padding:10px 11px; }
  .hero { min-height:auto; padding:72px 0 40px; }
  .hero h1 { font-size:clamp(48px,15vw,72px); }
  .hero-lede { font-size:15px; }
  .hero-actions { flex-direction:column; align-items:stretch; }
  .hero-metrics { grid-template-columns:1fr; }
  .hero-metrics article { display:flex; justify-content:space-between; align-items:center; }
  .hero-metrics small { margin:0; }
  .orbital-card { width:100%; max-width:430px; }
  .section-block { padding-top:94px; }
  .split-head { grid-template-columns:1fr; gap:18px; }
  .section-head h2,.split-head h2 { font-size:clamp(38px,11vw,56px); }
  .allocation-grid,.capability-split,.revenue-grid,.impact-grid { grid-template-columns:1fr; }
  .allocation-primary { grid-column:auto; }
  .flywheel-wrap { grid-template-columns:1fr; padding:24px; }
  .flywheel-visual { min-height:360px; }
  .institutional-card { grid-template-columns:1fr; gap:18px; }
  .timeline { grid-template-columns:1fr 1fr; }
  .value-drivers { grid-template-columns:1fr; }
  .driver-grid { grid-template-columns:1fr; }
  .table-row { grid-template-columns:1fr 1fr; }
  .table-row > :last-child { grid-column:1 / -1; }
  .table-head > :last-child { display:none; }
  .gates-grid { grid-template-columns:1fr 1fr; }
  .closing-inner { padding:82px 0; }
  .footer { flex-direction:column; }
  .footer p { text-align:left; }
}

@media (max-width: 520px) {
  .nav-cta { display:none; }
  .topbar { padding:10px 12px; }
  .hero h1 { font-size:46px; }
  .allocation-card,.deep-card,.scenario-card { padding:22px; }
  .impact-ladder { gap:7px; }
  .impact-step { min-width:166px; }
  .gates-grid { grid-template-columns:1fr; }
  .wheel-item { font-size:9px; }
  .wi1{left:0}.wi2{right:0}.wi3{right:0}.wi4{left:0}
}

@keyframes travelVertical { from { top:-30%; } to { top:100%; } }

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