:root {
  --white: #ffffff;
  --paper: #fbfcff;
  --soft: #f5f7fb;
  --ink: #07142f;
  --ink-2: #17233e;
  --muted: #5f6b81;
  --line: #e8ebf2;
  --line-strong: #d7dce7;
  --accent: #2457ff;
  --accent-2: #714dff;
  --cyan: #3bc8ff;
  --accent-soft: #edf2ff;
  --shadow: 0 24px 70px rgba(16, 33, 77, .09);
  --shadow-hover: 0 28px 80px rgba(16, 33, 77, .13);
  --max: 1260px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--white);
  color: var(--ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
.skip-link { position:absolute; left:12px; top:-60px; z-index:100; padding:10px 14px; background:#fff; border:1px solid var(--line); border-radius:10px; }
.skip-link:focus { top:12px; }
.shell { width: min(100% - 48px, var(--max)); margin: 0 auto; }
.section { padding: 112px 0; }

.site-header { position: sticky; top:0; z-index:50; border-bottom:1px solid rgba(229,233,241,.9); background:rgba(255,255,255,.88); backdrop-filter: blur(20px); }
.header-inner { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand img { width: 218px; }
.primary-nav { display:flex; align-items:center; gap:28px; color:#4b5569; font-size:14px; font-weight:650; }
.primary-nav a { padding:10px 0; position:relative; }
.primary-nav a:not(.nav-contact)::after { content:""; position:absolute; left:0; bottom:4px; width:100%; height:1px; background:linear-gradient(90deg,var(--accent),var(--accent-2)); transform:scaleX(0); transform-origin:left; transition:transform .22s ease; }
.primary-nav a:hover::after, .primary-nav a:focus-visible::after { transform:scaleX(1); }
.nav-contact { padding:10px 16px !important; border:1px solid var(--line-strong); border-radius:999px; color:var(--ink); background:#fff; }
.menu-button { display:none; border:1px solid var(--line-strong); background:#fff; border-radius:999px; padding:9px 14px; color:var(--ink); font-weight:700; }

.eyebrow { display:inline-flex; align-items:center; gap:12px; margin:0 0 20px; color:var(--accent); text-transform:none; letter-spacing:.035em; font-size:15px; line-height:1.35; font-weight:800; }
.eyebrow::before { content:""; width:28px; height:1px; background:linear-gradient(90deg,var(--accent),var(--accent-2)); }
.section-kicker { display:flex; align-items:center; margin-bottom:20px; }
.section-kicker .eyebrow { margin:0; }

.hero { min-height:calc(100vh - 78px); display:grid; grid-template-columns:minmax(0, .94fr) minmax(520px,1.06fr); gap:46px; align-items:center; padding-top:52px; padding-bottom:64px; }
.hero h1, h2 { margin:0; letter-spacing:-.055em; line-height:.98; }
.hero h1 { max-width:760px; font-size:clamp(58px, 6.7vw, 94px); font-weight:800; }
.hero h1 span { color:var(--accent); }
.hero-copy { max-width:720px; margin:26px 0 0; color:var(--ink-2); font-size:clamp(20px,2vw,27px); line-height:1.42; letter-spacing:-.015em; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:32px; }
.button { min-height:52px; display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:0 20px; border-radius:13px; border:1px solid transparent; cursor:pointer; font-size:14px; font-weight:760; transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.button:hover { transform:translateY(-1px); }
.button.primary { color:#fff; background:linear-gradient(135deg,var(--accent),#3769ff 62%,var(--accent-2)); box-shadow:0 14px 34px rgba(36,87,255,.22); }
.button.primary:hover { box-shadow:0 18px 42px rgba(36,87,255,.28); }
.button.secondary { color:var(--ink); background:#fff; border-color:var(--line-strong); }
.active-status { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-top:22px; color:#5d6980; font-size:12px; line-height:1.45; }
.active-status strong { color:var(--ink-2); font-size:12px; }
.active-dot { width:8px; height:8px; border-radius:50%; background:#20a66a; box-shadow:0 0 0 6px rgba(32,166,106,.09); animation:pulseDot 2.6s ease-in-out infinite; }
.hero-proof { display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin-top:42px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.hero-proof div { padding:18px 14px 18px 0; min-height:82px; }
.hero-proof div + div { padding-left:16px; border-left:1px solid var(--line); }
.hero-proof strong { display:block; font-size:12px; letter-spacing:.06em; text-transform:uppercase; color:var(--ink); }
.hero-proof span { display:block; margin-top:6px; color:var(--muted); font-size:11px; line-height:1.45; }

.hero-lab { position:relative; min-height:650px; overflow:hidden; border:1px solid var(--line); border-radius:34px; background:#fbfcff; box-shadow:var(--shadow); isolation:isolate; }
.hero-lab::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 52% 44%, rgba(36,87,255,.09), transparent 30%), radial-gradient(circle at 74% 18%, rgba(113,77,255,.08), transparent 28%); z-index:0; }
.hero-grid { position:absolute; inset:0; background-image:linear-gradient(rgba(35,70,150,.045) 1px, transparent 1px),linear-gradient(90deg,rgba(35,70,150,.045) 1px,transparent 1px); background-size:34px 34px; mask-image:linear-gradient(180deg,rgba(0,0,0,.9),transparent 90%); z-index:0; }
.hero-lab-image { position:absolute; left:4%; right:4%; top:15%; width:92%; height:auto; object-fit:contain; mix-blend-mode:multiply; filter:saturate(1.02) contrast(1.02); z-index:1; }
.hero-canvas { position:absolute; inset:0; width:100%; height:100%; z-index:2; pointer-events:none; }
.energy-ribbon { position:absolute; height:2px; width:78%; left:11%; border-radius:999px; filter:drop-shadow(0 0 10px rgba(36,87,255,.42)); z-index:3; opacity:.8; }
.ribbon-a { top:41%; background:linear-gradient(90deg,transparent,var(--cyan),var(--accent),var(--accent-2),transparent); transform:rotate(-8deg); animation:ribbonShift 7s ease-in-out infinite alternate; }
.ribbon-b { top:58%; background:linear-gradient(90deg,transparent,var(--accent-2),var(--accent),var(--cyan),transparent); transform:rotate(7deg); animation:ribbonShift 9s ease-in-out infinite alternate-reverse; opacity:.45; }
.floating-panel { position:absolute; z-index:4; width:176px; padding:14px 15px; border:1px solid rgba(197,207,229,.8); border-radius:16px; background:rgba(255,255,255,.76); backdrop-filter:blur(14px); box-shadow:0 16px 34px rgba(25,47,99,.08); animation:floatPanel 6.5s ease-in-out infinite; }
.floating-panel span { display:block; color:var(--accent); font-size:9px; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.floating-panel strong { display:block; margin-top:7px; font-size:14px; }
.floating-panel small { display:block; margin-top:4px; color:var(--muted); font-size:10.5px; line-height:1.4; }
.fp-one { left:4%; top:8%; }
.fp-two { right:4%; top:12%; animation-delay:1.4s; }
.fp-three { right:5%; bottom:8%; animation-delay:2.8s; }
.lab-caption { position:absolute; left:26px; bottom:22px; z-index:4; color:#64708a; font-size:10px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }

.research-signal-band { border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:#fff; }
.research-signal-inner { min-height:64px; display:flex; align-items:center; justify-content:center; gap:24px; color:#677287; font-size:11px; font-weight:760; letter-spacing:.15em; text-transform:uppercase; }
.research-signal-inner i { width:4px; height:4px; border-radius:50%; background:var(--accent); box-shadow:0 0 0 4px rgba(36,87,255,.08); }

.intro-section { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr); column-gap:64px; row-gap:34px; border-bottom:1px solid var(--line); }
.intro-title h2 { font-size:clamp(44px,5vw,68px); max-width:800px; }
.intro-copy p { margin:0; color:var(--muted); font-size:18px; line-height:1.75; }
.intro-copy p + p { margin-top:18px; }
.intro-quote { grid-column:1 / 3; margin:14px 0 0; padding:28px 0 0; border-top:1px solid var(--line); color:#283652; font-family:Georgia, "Times New Roman", serif; font-size:clamp(28px,3.5vw,46px); font-style:italic; line-height:1.28; }

.research-section { background:linear-gradient(180deg,#fff 0%,#fbfcff 100%); }
.section-head.split { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr); gap:58px; align-items:end; margin-bottom:44px; }
.section-head h2 { font-size:clamp(42px,5vw,66px); }
.section-head p { margin:0; color:var(--muted); font-size:18px; line-height:1.72; }
.research-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.research-card { min-height:330px; display:grid; grid-template-columns:180px 1fr; overflow:hidden; background:#fff; border:1px solid var(--line); border-radius:24px; transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease; }
.research-card:hover { transform:translateY(-5px); border-color:#ccd4e2; box-shadow:var(--shadow-hover); }
.research-image { display:grid; place-items:center; min-height:100%; background:linear-gradient(180deg,#f7faff,#eef3ff); border-right:1px solid var(--line); position:relative; overflow:hidden; }
.research-image::after { content:""; position:absolute; inset:0; background:radial-gradient(circle at 50% 48%,rgba(36,87,255,.10),transparent 44%); }
.research-image img { width:118px; height:118px; object-fit:cover; border-radius:50%; mix-blend-mode:multiply; position:relative; z-index:1; }
.research-card-body { padding:28px; }
.research-card h3 { margin:8px 0 12px; font-size:30px; letter-spacing:-.04em; }
.research-card p { margin:0; color:var(--muted); font-size:15.5px; line-height:1.68; }
.research-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; }
.research-tags span { padding:7px 9px; border:1px solid var(--line); border-radius:999px; background:#fff; color:#536079; font-size:10.5px; font-weight:700; }

.approach-section { border-top:1px solid var(--line); }
.approach-flow { position:relative; display:grid; grid-template-columns:repeat(5,1fr); gap:18px; margin-top:12px; padding-top:38px; }
.flow-line { position:absolute; left:8%; right:8%; top:72px; height:1px; background:#dbe1ec; }
.flow-line span { display:block; width:18%; height:100%; background:linear-gradient(90deg,var(--accent),var(--accent-2)); animation:flowLine 5.8s ease-in-out infinite; }
.approach-flow article { position:relative; z-index:1; text-align:center; padding:0 10px; }
.flow-icon { width:68px; height:68px; margin:0 auto 18px; display:grid; place-items:center; border-radius:50%; border:1px solid #ccd6ee; background:#fff; color:var(--accent); font-weight:850; box-shadow:0 12px 28px rgba(36,87,255,.09), inset 0 0 0 8px #f5f8ff; }
.approach-flow h3 { margin:0 0 8px; font-size:20px; }
.approach-flow p { margin:0; color:var(--muted); font-size:14px; line-height:1.58; }

.frontier-section { background:#fbfcff; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.frontier-layout { display:grid; grid-template-columns:minmax(0,.8fr) minmax(520px,1.2fr); gap:64px; align-items:center; }
.frontier-copy h2 { font-size:clamp(44px,5vw,68px); }
.frontier-copy p { margin:24px 0 0; max-width:560px; color:var(--muted); font-size:18px; line-height:1.72; }
.frontier-note { margin-top:28px; padding-top:22px; border-top:1px solid var(--line); color:#31405f; font-size:14px; font-weight:700; }
.frontier-map { position:relative; min-height:600px; border:1px solid var(--line); border-radius:30px; overflow:hidden; background:radial-gradient(circle at 50% 50%,rgba(36,87,255,.08),transparent 34%),#fff; box-shadow:var(--shadow); }
.frontier-map::before { content:""; position:absolute; inset:0; background-image:radial-gradient(#dfe4ed 1px,transparent 1px); background-size:24px 24px; opacity:.5; }
.frontier-core { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:126px; height:126px; border-radius:50%; display:grid; place-items:center; align-content:center; color:#fff; background:radial-gradient(circle at 35% 25%,#4e7cff,var(--accent) 55%,#183ac1); box-shadow:0 0 0 18px rgba(36,87,255,.06),0 22px 48px rgba(36,87,255,.24); z-index:3; }
.frontier-core strong { font-size:34px; letter-spacing:-.04em; }
.frontier-core span { margin-top:3px; font-size:9px; text-transform:uppercase; letter-spacing:.15em; }
.orbit-track { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); border:1px solid #d8dfeb; border-radius:50%; }
.orbit-track.orbit-1 { width:360px; height:360px; }
.orbit-track.orbit-2 { width:500px; height:500px; border-style:dashed; animation:orbitRotate 24s linear infinite; }
.domain-node { position:absolute; z-index:4; border:1px solid var(--line-strong); border-radius:999px; background:rgba(255,255,255,.95); color:var(--ink); padding:9px 13px; box-shadow:0 12px 26px rgba(22,43,86,.08); font-size:11px; font-weight:750; pointer-events:none; }
.dn-1{left:7%;top:22%}.dn-2{left:39%;top:7%}.dn-3{right:8%;top:20%}.dn-4{right:6%;bottom:23%}.dn-5{left:36%;bottom:8%}.dn-6{left:5%;bottom:24%}.dn-7{right:34%;bottom:18%}
.frontier-pulse { position:absolute; width:8px; height:8px; border-radius:50%; background:var(--accent); z-index:2; box-shadow:0 0 0 8px rgba(36,87,255,.08); animation:pulseDot 2.6s ease-in-out infinite; }
.pulse-a{left:23%;top:47%}.pulse-b{right:21%;top:42%;animation-delay:1.1s}

.principles-head { display:grid; grid-template-columns:1fr .7fr; gap:54px; align-items:end; margin-bottom:40px; }
.principles-head h2 { font-size:clamp(42px,5vw,66px); }
.principles-head p { margin:0; color:var(--muted); font-size:18px; line-height:1.72; }
.principle-row { display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.principle-row article { min-height:236px; padding:30px 22px; position:relative; }
.principle-row article + article { border-left:1px solid var(--line); }
.principle-row article::before { content:""; display:block; width:34px; height:3px; margin-bottom:46px; border-radius:999px; background:linear-gradient(90deg,var(--accent),var(--accent-2)); }
.principle-row h3 { margin:0 0 10px; font-size:19px; letter-spacing:-.025em; }
.principle-row p { margin:0; color:var(--muted); font-size:14px; line-height:1.58; }

.build-section { background:linear-gradient(180deg,#fff,#f8faff); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.build-layout { display:grid; grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr); gap:72px; align-items:center; }
.build-copy h2 { font-size:clamp(46px,5.2vw,74px); max-width:780px; }
.build-copy p { margin:26px 0 0; max-width:720px; color:var(--muted); font-size:18px; line-height:1.74; }
.build-field { position:relative; min-height:500px; padding:58px 44px; border:1px solid var(--line); border-radius:30px; overflow:hidden; background:radial-gradient(circle at 72% 22%,rgba(113,77,255,.08),transparent 28%),radial-gradient(circle at 30% 68%,rgba(36,87,255,.09),transparent 34%),#fff; box-shadow:var(--shadow); }
.build-field::before { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(35,70,150,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(35,70,150,.04) 1px,transparent 1px); background-size:32px 32px; }
.build-field article { position:relative; z-index:2; display:grid; grid-template-columns:28px 1fr; gap:16px; align-items:start; padding:20px 0; border-bottom:1px solid var(--line); }
.build-field article:last-of-type { border-bottom:0; }
.build-dot { width:13px; height:13px; margin-top:5px; border-radius:50%; background:var(--accent); box-shadow:0 0 0 7px rgba(36,87,255,.08),0 0 24px rgba(36,87,255,.18); }
.build-field strong { display:block; font-size:21px; letter-spacing:-.025em; }
.build-field small { display:block; margin-top:6px; color:var(--muted); font-size:14px; line-height:1.55; }
.build-signal { position:absolute; right:-12%; top:18%; width:64%; height:2px; background:linear-gradient(90deg,transparent,var(--cyan),var(--accent),var(--accent-2),transparent); transform:rotate(-22deg); filter:drop-shadow(0 0 12px rgba(36,87,255,.35)); animation:ribbonShift 7s ease-in-out infinite alternate; }



/* V9 active-status, partnerships and milestone sections */
.activity-section {
  background:
    linear-gradient(rgba(35,70,150,.03) 1px,transparent 1px),
    linear-gradient(90deg,rgba(35,70,150,.03) 1px,transparent 1px),
    #fbfcff;
  background-size:38px 38px;
  border-bottom:1px solid var(--line);
}
.activity-layout { display:grid; grid-template-columns:minmax(0,.72fr) minmax(560px,1.28fr); gap:70px; align-items:start; }
.activity-copy h2 { font-size:clamp(46px,5.2vw,72px); max-width:650px; }
.activity-copy > p { margin:24px 0 0; color:var(--muted); font-size:18px; line-height:1.72; max-width:620px; }
.activity-note { padding-top:24px; border-top:1px solid var(--line); color:#34415d !important; font-size:14px !important; font-weight:650; }
.activity-board { border:1px solid var(--line); border-radius:28px; overflow:hidden; background:rgba(255,255,255,.94); box-shadow:var(--shadow); }
.activity-board article { display:grid; grid-template-columns:138px minmax(180px,.7fr) minmax(260px,1.3fr); gap:20px; align-items:start; padding:26px 28px; border-bottom:1px solid var(--line); position:relative; }
.activity-board article:last-child { border-bottom:0; }
.activity-board article::before { content:""; position:absolute; left:0; top:0; bottom:0; width:3px; background:linear-gradient(180deg,var(--accent),var(--accent-2)); opacity:0; transition:opacity .2s ease; }
.activity-board article:hover::before { opacity:1; }
.activity-state { display:flex; align-items:center; gap:9px; color:#4d5b74; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.state-dot { width:8px; height:8px; border-radius:50%; flex:0 0 auto; }
.state-dot.is-live { background:#20a66a; box-shadow:0 0 0 6px rgba(32,166,106,.08); }
.state-dot.is-starting { background:var(--accent); box-shadow:0 0 0 6px rgba(36,87,255,.08); }
.state-dot.is-next { background:var(--accent-2); box-shadow:0 0 0 6px rgba(113,77,255,.08); }
.activity-board h3 { margin:0; font-size:22px; letter-spacing:-.03em; }
.activity-board p { margin:0; color:var(--muted); font-size:14px; line-height:1.62; }

.partnership-section { background:#fff; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.partnership-layout { display:grid; grid-template-columns:minmax(0,.9fr) minmax(540px,1.1fr); gap:72px; align-items:center; }
.partnership-badge { width:max-content; display:flex; align-items:center; gap:9px; margin-bottom:22px; padding:8px 11px; border:1px solid #ded8ff; border-radius:999px; background:#faf8ff; color:#5b42d2; font-size:11px; font-weight:850; letter-spacing:.055em; text-transform:uppercase; }
.partnership-badge span { width:7px; height:7px; border-radius:50%; background:var(--accent-2); box-shadow:0 0 0 5px rgba(113,77,255,.08); }
.partnership-copy h2 { font-size:clamp(48px,5.5vw,76px); max-width:780px; }
.partnership-copy > p { margin:24px 0 0; max-width:740px; color:var(--muted); font-size:18px; line-height:1.74; }
.partnership-actions { display:flex; align-items:center; gap:18px; margin-top:32px; }
.partnership-actions > span { max-width:290px; color:#78849a; font-size:12px; line-height:1.55; }
.partnership-visual { position:relative; min-height:570px; overflow:hidden; border:1px solid var(--line); border-radius:32px; background:radial-gradient(circle at 50% 50%,rgba(36,87,255,.08),transparent 27%),radial-gradient(circle at 78% 25%,rgba(113,77,255,.07),transparent 24%),#fbfcff; box-shadow:var(--shadow); }
.partner-grid { position:absolute; inset:0; background-image:linear-gradient(rgba(35,70,150,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(35,70,150,.04) 1px,transparent 1px); background-size:34px 34px; }
.partner-core { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:140px; height:140px; border-radius:50%; display:grid; place-items:center; align-content:center; z-index:4; color:#fff; background:radial-gradient(circle at 35% 25%,#527dff,var(--accent) 58%,#193ac3); box-shadow:0 0 0 20px rgba(36,87,255,.055),0 22px 50px rgba(36,87,255,.20); }
.partner-core strong { font-size:21px; }.partner-core span { margin-top:4px; font-size:9px; text-transform:uppercase; letter-spacing:.14em; }
.partner-node { position:absolute; z-index:4; width:190px; padding:18px; border:1px solid var(--line-strong); border-radius:18px; background:rgba(255,255,255,.9); backdrop-filter:blur(12px); box-shadow:0 14px 34px rgba(25,47,99,.07); }
.partner-node strong { display:block; font-size:15px; }.partner-node span { display:block; margin-top:6px; color:var(--muted); font-size:11px; line-height:1.45; }
.partner-enterprise { left:5%; top:10%; }.partner-consumer { right:5%; top:15%; }.partner-frontier { right:9%; bottom:9%; }
.partner-line { position:absolute; z-index:2; height:1px; transform-origin:left center; background:linear-gradient(90deg,rgba(36,87,255,.15),var(--accent),rgba(113,77,255,.18)); filter:drop-shadow(0 0 8px rgba(36,87,255,.22)); }
.line-one { width:44%; left:22%; top:34%; transform:rotate(26deg); }.line-two { width:40%; left:49%; top:48%; transform:rotate(-29deg); }.line-three { width:36%; left:50%; top:54%; transform:rotate(31deg); }
.partner-pulse { position:absolute; z-index:3; width:8px; height:8px; border-radius:50%; background:var(--cyan); box-shadow:0 0 0 8px rgba(59,200,255,.08),0 0 24px rgba(36,87,255,.18); animation:pulseDot 2.4s ease-in-out infinite; }
.pulse-one { left:34%; top:37%; }.pulse-two { right:29%; bottom:31%; animation-delay:1s; }

.milestones-section { background:#fbfcff; border-bottom:1px solid var(--line); }
.milestones-layout { display:grid; grid-template-columns:minmax(0,.7fr) minmax(560px,1.3fr); gap:70px; align-items:start; }
.milestones-copy h2 { font-size:clamp(42px,4.8vw,64px); max-width:670px; }
.milestones-copy > p { margin:22px 0 0; color:var(--muted); font-size:17px; line-height:1.7; max-width:590px; }
.milestone-list { border-top:1px solid var(--line-strong); }
.milestone-list article { display:grid; grid-template-columns:150px 1fr; gap:28px; padding:26px 0; border-bottom:1px solid var(--line); }
.milestone-list time { color:#778399; font-size:11px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.milestone-list h3 { margin:0; font-size:22px; letter-spacing:-.03em; }.milestone-list p { margin:8px 0 0; color:var(--muted); font-size:14px; line-height:1.62; }
.milestone-next h3 { color:#3f3f91; }.milestone-next time { color:var(--accent-2); }

/* V8 research-substance sections */
.questions-section { background:#fff; border-top:1px solid var(--line); }
.questions-head { margin-bottom:18px !important; }
.question-list { border-top:1px solid var(--line-strong); }
.question-list article {
  display:grid;
  grid-template-columns:170px minmax(340px,.95fr) minmax(360px,1.05fr);
  gap:34px;
  align-items:start;
  padding:34px 0;
  border-bottom:1px solid var(--line);
  position:relative;
}
.question-list article::after {
  content:"";
  position:absolute;
  left:0;
  bottom:-1px;
  width:0;
  height:1px;
  background:linear-gradient(90deg,var(--accent),var(--cyan),transparent);
  transition:width .35s ease;
}
.question-list article:hover::after { width:58%; }
.question-status { display:grid; gap:8px; align-content:start; }
.question-status span {
  width:max-content;
  max-width:100%;
  padding:7px 10px;
  border:1px solid #dbe3f6;
  border-radius:999px;
  background:#f8faff;
  color:var(--accent);
  font-size:11px;
  line-height:1;
  font-weight:800;
  letter-spacing:.025em;
}
.question-status small { color:#7d899f; font-size:11px; font-weight:720; letter-spacing:.08em; text-transform:uppercase; }
.question-list h3 { margin:0; font-size:clamp(24px,2.5vw,34px); line-height:1.12; letter-spacing:-.035em; }
.question-list p { margin:2px 0 0; color:var(--muted); font-size:16px; line-height:1.72; }

.notebook-section {
  background:
    linear-gradient(rgba(35,70,150,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(35,70,150,.035) 1px,transparent 1px),
    #fbfcff;
  background-size:36px 36px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.notebook-layout { display:grid; grid-template-columns:minmax(0,.78fr) minmax(560px,1.22fr); gap:72px; align-items:start; }
.notebook-copy { position:sticky; top:116px; }
.notebook-copy h2 { font-size:clamp(44px,5.2vw,72px); max-width:720px; }
.notebook-copy > p { margin:24px 0 0; max-width:620px; color:var(--muted); font-size:18px; line-height:1.72; }
.notebook-integrity { margin-top:30px; padding:20px 0 0; border-top:1px solid var(--line); color:#667187; font-size:13px; line-height:1.55; }
.notebook-integrity strong { color:var(--ink-2); }
.integrity-dot { display:inline-block; width:8px; height:8px; margin-right:10px; border-radius:50%; background:#20a66a; box-shadow:0 0 0 6px rgba(32,166,106,.08); vertical-align:1px; }
.notebook-list { border:1px solid var(--line); border-radius:28px; overflow:hidden; background:rgba(255,255,255,.92); box-shadow:var(--shadow); }
.notebook-list article { padding:28px 30px 30px; border-bottom:1px solid var(--line); position:relative; }
.notebook-list article:last-child { border-bottom:0; }
.notebook-list article::before { content:""; position:absolute; left:0; top:0; bottom:0; width:3px; background:linear-gradient(180deg,var(--accent),var(--accent-2)); opacity:0; transition:opacity .22s ease; }
.notebook-list article:hover::before { opacity:1; }
.notebook-meta { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:16px; }
.notebook-meta span { color:#768197; font-size:11px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.notebook-meta strong { padding:6px 9px; border-radius:999px; background:#f0f3f8; color:#68748a; font-size:10px; letter-spacing:.07em; text-transform:uppercase; }
.notebook-list h3 { margin:0; font-size:24px; line-height:1.18; letter-spacing:-.03em; }
.notebook-list p { margin:10px 0 0; color:var(--muted); font-size:15px; line-height:1.65; }

.contact-section { position:relative; overflow:hidden; padding:108px 0 90px; }
.contact-landscape { position:absolute; inset:auto 0 0; height:190px; overflow:hidden; opacity:.82; pointer-events:none; }
.contact-landscape::before { content:""; position:absolute; inset:0; background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.78) 30%,rgba(255,255,255,.10) 100%); z-index:2; }
.contact-landscape img { width:100%; height:100%; object-fit:cover; object-position:center 65%; filter:saturate(.82) contrast(.98); }
.contact-layout { position:relative; z-index:3; display:grid; grid-template-columns:minmax(0,.72fr) minmax(520px,1.28fr); gap:50px; align-items:start; }
.contact-copy h2 { font-size:clamp(46px,5vw,70px); }
.contact-copy > p { margin:24px 0 0; color:var(--muted); font-size:18px; line-height:1.72; }
.contact-meta { margin-top:30px; padding-top:24px; border-top:1px solid var(--line); display:grid; gap:6px; font-size:13px; }
.contact-meta span { color:var(--muted); }
.lead-form { padding:28px; border:1px solid var(--line); border-radius:24px; background:rgba(255,255,255,.92); backdrop-filter:blur(14px); box-shadow:var(--shadow); }
.form-grid.two-col-form { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.field { margin-bottom:15px; }
.field label { display:block; margin-bottom:7px; color:#34405b; font-size:12px; font-weight:720; }
.field input, .field select, .field textarea { width:100%; border:1px solid var(--line-strong); border-radius:11px; background:#fff; color:var(--ink); padding:13px 14px; outline:none; transition:border-color .2s ease, box-shadow .2s ease; }
.field input:focus, .field select:focus, .field textarea:focus { border-color:#8ea8ff; box-shadow:0 0 0 4px rgba(36,87,255,.08); }
.field textarea { resize:vertical; min-height:130px; }
.field-meta { display:flex; justify-content:space-between; gap:16px; margin-top:7px; color:#8490a5; font-size:10.5px; }
.consent-row { display:flex; gap:10px; align-items:flex-start; margin-top:4px; color:#667187; font-size:11.5px; line-height:1.45; }
.consent-row input { margin-top:2px; }
.form-actions { display:flex; align-items:center; gap:14px; margin-top:18px; }
.form-status { margin:0; color:#526079; font-size:12px; }
.form-status.success { color:#116a45; }.form-status.error { color:#a23131; }
.submit-button { min-width:160px; }
.submit-spinner { display:none; width:14px; height:14px; border:2px solid rgba(255,255,255,.4); border-top-color:#fff; border-radius:50%; animation:spin .8s linear infinite; }
.submit-button.is-loading .submit-spinner { display:block; }.submit-button.is-loading .submit-label { opacity:.75; }
.honeypot { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; overflow:hidden !important; }

.site-footer { border-top:1px solid var(--line); padding:28px 0 38px; background:#fff; }
.footer-inner { display:grid; grid-template-columns:1fr auto auto; gap:26px; align-items:center; }
.footer-inner img { width:178px; }
.footer-links { display:flex; flex-wrap:wrap; gap:18px; color:#596579; font-size:12px; }
.footer-copy { text-align:right; color:#788398; font-size:11px; }
.footer-copy p { margin:0; }.footer-copy p + p { margin-top:4px; }

[data-reveal] { opacity:0; transform:translateY(20px); transition:opacity .7s ease, transform .7s cubic-bezier(.22,1,.36,1); }
[data-reveal].is-visible { opacity:1; transform:none; }

@keyframes floatPanel { 0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)} }
@keyframes ribbonShift { from{transform:translateX(-2%) rotate(-8deg)}to{transform:translateX(2%) rotate(-4deg)} }
@keyframes flowLine { 0%{transform:translateX(0);width:18%}50%{transform:translateX(320%);width:22%}100%{transform:translateX(0);width:18%} }
@keyframes orbitRotate { to{transform:translate(-50%,-50%) rotate(360deg)} }
@keyframes dashOrbit { to{transform:translate(-50%,-50%) rotate(384deg)} }
@keyframes pulseDot { 0%,100%{transform:scale(1);opacity:.65}50%{transform:scale(1.35);opacity:1} }
@keyframes spin { to{transform:rotate(360deg)} }


@media (max-width:1100px) {
  .activity-layout, .partnership-layout, .milestones-layout { grid-template-columns:1fr; }
  .activity-board article { grid-template-columns:130px .7fr 1.3fr; }
}
@media (max-width:1100px) {
  .hero { grid-template-columns:1fr; }
  .hero-lab { min-height:580px; }
  .hero-proof { grid-template-columns:repeat(2,1fr); }
  .hero-proof div:nth-child(3) { border-left:0; border-top:1px solid var(--line); }
  .hero-proof div:nth-child(4) { border-top:1px solid var(--line); }
  .intro-section { grid-template-columns:1fr; }
  .intro-copy { grid-column:1; }
  .intro-quote { grid-column:1; }
  .section-head.split, .frontier-layout, .principles-head, .build-layout, .contact-layout, .notebook-layout { grid-template-columns:1fr; }
  .notebook-copy { position:static; }
  .question-list article { grid-template-columns:150px minmax(280px,.9fr) minmax(300px,1.1fr); gap:24px; }
  .research-grid { grid-template-columns:1fr; }
  .principle-row { grid-template-columns:repeat(2,1fr); }
  .principle-row article:nth-child(3), .principle-row article:nth-child(5) { border-left:0; }
}

@media (max-width:780px) {
  .active-status { align-items:flex-start; }
  .activity-board article { grid-template-columns:1fr; gap:10px; padding:24px; }
  .activity-state { margin-bottom:2px; }
  .partnership-actions { align-items:flex-start; flex-direction:column; }
  .partnership-visual { min-height:500px; }
  .partner-node { width:150px; padding:14px; }
  .partner-enterprise { left:4%; top:7%; }.partner-consumer { right:4%; top:13%; }.partner-frontier { right:5%; bottom:7%; }
  .partner-core { width:112px; height:112px; }
  .milestone-list article { grid-template-columns:1fr; gap:8px; }
}
@media (max-width:780px) {
  .eyebrow { font-size:14px; letter-spacing:.02em; }
  .shell { width:min(100% - 28px,var(--max)); }
  .section { padding:82px 0; }
  .header-inner { min-height:70px; }
  .brand img { width:178px; }
  .menu-button { display:inline-flex; }
  .primary-nav { display:none; position:absolute; left:14px; right:14px; top:70px; flex-direction:column; align-items:stretch; gap:4px; padding:14px; background:rgba(255,255,255,.96); border:1px solid var(--line); border-radius:18px; box-shadow:var(--shadow); }
  .primary-nav.open { display:flex; }
  .nav-contact { border-radius:12px; }
  .hero { min-height:auto; padding-top:44px; }
  .hero h1 { font-size:clamp(48px,13vw,72px); }
  .hero-copy { font-size:19px; }
  .hero-proof { grid-template-columns:1fr; }
  .hero-proof div + div, .hero-proof div:nth-child(3) { border-left:0; border-top:1px solid var(--line); padding-left:0; }
  .hero-lab { min-height:470px; border-radius:24px; }
  .hero-lab-image { left:-6%; top:20%; width:112%; max-width:none; }
  .floating-panel { width:145px; padding:11px 12px; }
  .fp-one { left:3%; top:4%; }.fp-two { right:3%; top:8%; }.fp-three { right:4%; bottom:6%; }
  .research-signal-inner { justify-content:flex-start; overflow-x:auto; white-space:nowrap; }
  .intro-section { grid-template-columns:1fr; }
  .intro-copy, .intro-quote { grid-column:1; }
  .section-head.split { gap:22px; }
  .question-list article { grid-template-columns:1fr; gap:14px; padding:28px 0; }
  .question-status { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
  .question-list h3 { font-size:28px; }
  .notebook-list article { padding:24px; }
  .research-card { grid-template-columns:1fr; }
  .research-image { min-height:190px; border-right:0; border-bottom:1px solid var(--line); }
  .research-image img { width:132px; height:132px; }
  .approach-flow { grid-template-columns:1fr; gap:22px; padding-top:10px; }
  .flow-line { display:none; }
  .approach-flow article { text-align:left; display:grid; grid-template-columns:68px 1fr; column-gap:16px; align-items:center; }
  .approach-flow article p { grid-column:2; }
  .flow-icon { margin:0; grid-row:1 / 3; }
  .frontier-map { min-height:470px; }
  .orbit-track.orbit-1 { width:280px; height:280px; }.orbit-track.orbit-2{width:390px;height:390px}
  .domain-node { font-size:9px; padding:7px 9px; }
  .principle-row { grid-template-columns:1fr; }
  .principle-row article + article { border-left:0; border-top:1px solid var(--line); }
  .form-grid.two-col-form { grid-template-columns:1fr; gap:0; }
  .footer-inner { grid-template-columns:1fr; }
  .footer-copy { text-align:left; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation:none !important; transition:none !important; }
  [data-reveal] { opacity:1; transform:none; }
}
