:root {
  --orbit-black: #030914;
  --orbit-panel: #07111d;
  --orbit-panel-2: #0a1623;
  --orbit-line: rgba(120, 173, 215, .24);
  --orbit-ink: #f2f7ff;
  --orbit-muted: #92a8bf;
  --ion-blue: #3d9eff;
  --lab-orange: #ff893b;
  --bio-green: #b8e13d;
  --concept-focus: #74c0ff;
  --concept-max: 1320px;
}

body { background: var(--orbit-black); color: var(--orbit-ink); font-family: Karla, sans-serif; }
.aphelion-page { overflow: clip; background: radial-gradient(circle at 70% 0,rgba(24,88,145,.12),transparent 30%), var(--orbit-black); }
.concept-nav { border-bottom: 1px solid var(--orbit-line); background: rgba(3,9,20,.88); }
.concept-brand { font: 700 15px/1 Sora, sans-serif; letter-spacing: .18em; text-transform: uppercase; }
.brand-star { color: var(--ion-blue); font-size: 23px; }
.brand-sub { display: block; margin-top: 5px; color: var(--ion-blue); font: 500 8px/1 "Space Mono", monospace; letter-spacing: .16em; }
.concept-nav__links a { font: 500 9px/1 "Space Mono", monospace; letter-spacing: .1em; text-transform: uppercase; }
.aphelion-primary { background: var(--lab-orange); color: #180900; border-radius: 5px; box-shadow: 0 14px 34px rgba(255,137,59,.16); }
.aphelion-secondary { border-color: rgba(61,158,255,.45); background: rgba(5,18,32,.68); color: #8ccaff; border-radius: 5px; }
.concept-primary-nav-action { border-color: rgba(61,158,255,.62); background: transparent; color: #8fcaff; border-radius: 5px; font: 700 10px/1 "Space Mono", monospace; text-transform: uppercase; }

.aphelion-hero { min-height: 750px; position: relative; isolation: isolate; border-bottom: 1px solid var(--orbit-line); }
.aphelion-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(3,9,20,.98) 0%,rgba(3,9,20,.84) 38%,rgba(3,9,20,.04) 68%), url('/images/generated-concepts/aphelion-orbital-chamber-v1.webp') center/cover no-repeat; z-index: -2; }
.aphelion-hero::after { content: ""; position: absolute; inset: auto 0 0; height: 180px; background: linear-gradient(transparent,var(--orbit-black)); z-index: -1; }
.hero-inner { min-height: 680px; display: flex; align-items: center; }
.hero-copy { width: min(660px,55%); padding-top: 20px; }
.aphelion-kicker { display: inline-flex; padding: 8px 11px; border: 1px solid rgba(61,158,255,.4); border-radius: 3px; color: #7bc1ff; font: 500 9px/1 "Space Mono", monospace; letter-spacing: .14em; text-transform: uppercase; }
.aphelion-hero h1 { margin: 24px 0 20px; font: 750 clamp(58px,5.4vw,82px)/.99 Sora, sans-serif; letter-spacing: -.055em; }
.aphelion-hero h1 .orange { color: var(--lab-orange); }.aphelion-hero h1 .blue { color: var(--ion-blue); }
.aphelion-hero .lede { max-width: 590px; margin: 0; color: #a4b6ca; font-size: 17px; line-height: 1.65; }
.hero-actions { display: flex; gap: 12px; margin-top: 28px; }
.coordinates { margin-top: 30px; color: #60768c; font: 500 9px/1.5 "Space Mono", monospace; letter-spacing: .11em; text-transform: uppercase; }
.hero-strain { position: absolute; right: 10%; top: 40%; padding: 12px 15px; border: 1px solid rgba(184,225,61,.7); background: rgba(5,15,20,.74); color: var(--bio-green); font: 500 9px/1.5 "Space Mono", monospace; box-shadow: 0 0 24px rgba(184,225,61,.08); }
.hero-strain::before { content: ""; position: absolute; right: 100%; top: 50%; width: 58px; height: 1px; background: var(--bio-green); }
.hero-facts { width: min(calc(100% - 48px),1320px); margin: -64px auto 0; position: relative; z-index: 4; display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid rgba(120,173,215,.3); border-radius: 8px; background: rgba(5,15,27,.9); backdrop-filter: blur(16px); }
.hero-scenario-note { grid-column: 1 / -1; position: static; margin: 0; padding: 8px 24px; border-bottom: 1px solid var(--orbit-line); color: #92a8bf; font: 500 8px/1.4 "Space Mono",monospace; letter-spacing: .08em; text-transform: uppercase; }
.hero-fact { min-height: 112px; padding: 24px; display: grid; grid-template-columns: 42px 1fr; gap: 14px; align-items: center; }
.hero-fact + .hero-fact { border-left: 1px solid var(--orbit-line); }
.hero-fact i { color: var(--ion-blue); font: 400 28px/1 "Space Mono", monospace; font-style: normal; }
.hero-fact b { display: block; font: 600 18px/1.15 Sora, sans-serif; }
.hero-fact span { display: block; margin-top: 5px; color: var(--orbit-muted); font: 400 9px/1.45 "Space Mono", monospace; }

.aphelion-section { padding: 80px 0; border-bottom: 1px solid var(--orbit-line); position: relative; }
.section-grid { display: grid; grid-template-columns: 260px 1fr; gap: 24px; }
.section-intro h2 { margin: 0 0 13px; font: 600 28px/1.1 Sora, sans-serif; letter-spacing: -.03em; }
.section-intro p { margin: 0; color: var(--orbit-muted); line-height: 1.6; }
.evidence-panel { display: grid; grid-template-columns: 1fr 250px; border: 1px solid var(--orbit-line); border-radius: 8px; background: var(--orbit-panel); overflow: hidden; }
.evidence-scroll { overflow-x: auto; }
.evidence-table { width: 100%; min-width: 650px; border-collapse: collapse; table-layout: fixed; font: 400 10px/1.4 "Space Mono", monospace; }
.evidence-table caption { padding: 12px 14px 4px; color: var(--bio-green); font-size: 8px; text-align: left; text-transform: uppercase; letter-spacing: .08em; }
.scenario-disclosure { margin-top: 16px!important; padding: 10px 12px; border-left: 2px solid var(--bio-green); background: rgba(184,225,61,.06); color: #b7c6d5!important; font: 500 9px/1.55 "Space Mono",monospace; }
.evidence-table th, .evidence-table td { padding: 15px 14px; border-bottom: 1px solid rgba(120,173,215,.15); text-align: left; }
.evidence-table th { color: #6f879e; font-size: 8px; text-transform: uppercase; }
.evidence-table td { color: #b7c6d5; }
.evidence-table td:first-child { color: #fff; font-size: 13px; }
.evidence-table .blue { color: var(--ion-blue); }.evidence-table .orange { color: var(--lab-orange); }
.mini-bar { display: inline-block; width: 58px; height: 3px; margin-left: 8px; background: #203142; vertical-align: middle; }
.mini-bar i { display: block; height: 100%; background: currentColor; }
.micrograph { min-height: 340px; position: relative; border-left: 1px solid var(--orbit-line); overflow: hidden; background: radial-gradient(ellipse at 20% 20%,rgba(184,225,61,.4) 0 3%,transparent 4%),radial-gradient(ellipse at 65% 18%,rgba(184,225,61,.45) 0 4%,transparent 5%),radial-gradient(ellipse at 38% 52%,rgba(184,225,61,.4) 0 5%,transparent 6%),radial-gradient(ellipse at 75% 70%,rgba(184,225,61,.36) 0 4%,transparent 5%),radial-gradient(circle at 55% 50%,rgba(121,164,36,.22),transparent 48%),#071007; background-size: 110px 110px,130px 120px,150px 140px,120px 100px,auto,auto; }
.micrograph::before { content: "AX-7C · POST-ASSAY\A LIVE / DEAD STAIN"; white-space: pre; position: absolute; left: 14px; top: 14px; color: var(--bio-green); font: 500 9px/1.5 "Space Mono", monospace; }
.micrograph::after { content: "5 μm"; position: absolute; right: 13px; bottom: 13px; color: #fff; font: 500 9px/1 "Space Mono", monospace; border-top: 2px solid #fff; padding-top: 5px; }

.platform-steps { display: grid; grid-template-columns: repeat(5,1fr); gap: 12px; }
.platform-step { min-height: 220px; padding: 18px; border: 1px solid var(--orbit-line); border-radius: 7px; background: linear-gradient(180deg,#071321,#050d17); }
.platform-step small { color: #86bff0; font: 500 9px/1 "Space Mono", monospace; }
.platform-step h3 { margin: 14px 0 8px; font: 600 14px/1.25 Sora, sans-serif; }
.platform-step p { min-height: 65px; color: var(--orbit-muted); font-size: 11px; line-height: 1.5; }
.protocol-graph { height: 56px; margin-top: 15px; display: flex; align-items: end; gap: 4px; border-bottom: 1px solid #2b4157; }
.protocol-graph i { flex: 1; height: var(--h); background: linear-gradient(var(--ion-blue),transparent); clip-path: polygon(45% 0,65% 70%,100% 100%,0 100%); }
.platform-step:last-child .protocol-graph i { background: linear-gradient(var(--bio-green),transparent); }

.capability-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
.capability { min-height: 340px; padding: 22px; display: flex; flex-direction: column; border: 1px solid var(--orbit-line); border-radius: 7px; overflow: hidden; background: var(--cap-bg); position: relative; }
.capability::before { content: ""; position: absolute; inset: 36% 0 0; background: radial-gradient(circle at 20% 30%,var(--cap-color) 0 3%,transparent 4%),radial-gradient(circle at 70% 45%,var(--cap-color) 0 4%,transparent 5%),radial-gradient(circle at 45% 76%,var(--cap-color) 0 5%,transparent 6%); background-size: 80px 80px,110px 90px,100px 110px; opacity: .45; }
.capability h3, .capability p, .capability-metric { position: relative; z-index: 1; }
.capability h3 { margin: 0; color: var(--cap-color); font: 600 13px/1.2 "Space Mono", monospace; text-transform: uppercase; }
.capability p { color: #9dafc1; font-size: 12px; line-height: 1.55; }
.capability-metric { margin-top: auto; padding-top: 130px; font: 600 28px/1 Sora, sans-serif; color: var(--cap-color); }
.capability-metric small { display: block; margin-top: 6px; color: var(--orbit-muted); font: 400 9px/1.4 "Space Mono", monospace; }
.limits-layout { display: grid; grid-template-columns: 1fr 300px; gap: 18px; }
.limits-panel { padding: 22px; border: 1px solid var(--orbit-line); border-radius: 7px; background: var(--orbit-panel); }
.limits-panel h3 { margin: 0 0 14px; font: 600 12px/1 "Space Mono", monospace; text-transform: uppercase; }
.limits-panel ul { margin: 0; padding-left: 18px; color: var(--orbit-muted); font-size: 11px; line-height: 1.75; }
.bio-register { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.biosafety { border-color: rgba(184,225,61,.25); }
.biosafety h3 { color: var(--bio-green); }
.orbital-spine { min-height: 420px; border: 1px solid var(--orbit-line); border-radius: 7px; background: linear-gradient(180deg,transparent,rgba(3,9,20,.18)),url('/images/generated-concepts/aphelion-orbital-chamber-v1.webp') 74% center/auto 100% no-repeat; }

.roadmap { display: grid; grid-template-columns: repeat(5,1fr); gap: 10px; }
.phase { min-height: 190px; padding: 16px; border: 1px solid var(--orbit-line); border-radius: 6px; background: #06101b; }
.phase small { color: var(--ion-blue); font: 500 8px/1 "Space Mono", monospace; text-transform: uppercase; }
.phase h3 { min-height: 44px; margin: 12px 0 8px; font: 500 11px/1.35 "Space Mono", monospace; text-transform: uppercase; }
.phase ul { margin: 0; padding: 0; list-style: none; color: var(--orbit-muted); font-size: 10px; line-height: 1.65; }
.phase li::before { content: "✓"; margin-right: 7px; color: var(--bio-green); }
.study-cta { min-height: 210px; margin-top: 18px; padding: 32px; display: grid; grid-template-columns: .8fr 1.2fr; gap: 38px; align-items: center; border: 1px solid var(--orbit-line); border-radius: 7px; background: linear-gradient(120deg,#071320,#09111b 55%,#10131c); }
.study-cta h2 { margin: 0; font: 650 34px/1.1 Sora, sans-serif; }
.study-cta p { color: var(--orbit-muted); line-height: 1.55; }
.aphelion-footer { padding: 52px 0 28px; display: grid; grid-template-columns: 1.2fr repeat(4,.8fr); gap: 28px; color: var(--orbit-muted); font-size: 11px; }
.aphelion-footer h3 { color: #fff; font: 500 10px/1 "Space Mono", monospace; text-transform: uppercase; }
.aphelion-footer a { display: block; margin: 8px 0; text-decoration: none; }

.reveal { transform: none; transition: opacity .28s ease, transform .28s ease; }
.aphelion-dialog { width: min(560px,calc(100% - 32px)); padding: 0; border: 1px solid var(--orbit-line); border-radius: 8px; background: #07111d; color: #fff; }
.aphelion-dialog::backdrop { background: rgba(1,5,12,.88); backdrop-filter: blur(10px); }
.dialog-inner { padding: 28px; }.dialog-head { display: flex; justify-content: space-between; gap: 20px; }.dialog-head h2 { margin: 10px 0 0; font: 600 28px/1.1 Sora, sans-serif; }.dialog-close { width: 44px; height: 44px; border: 1px solid var(--orbit-line); background: transparent; color: #fff; cursor: pointer; }
.mission-form { margin-top: 24px; display: grid; gap: 14px; }.mission-field { display: grid; gap: 7px; }.mission-field label { color: var(--orbit-muted); font: 500 9px/1 "Space Mono", monospace; text-transform: uppercase; }.mission-field input,.mission-field select,.mission-field textarea { width: 100%; min-height: 48px; padding: 12px; border: 1px solid var(--orbit-line); background: #030a13; color: #fff; }.mission-field textarea { min-height: 100px; resize: vertical; }

@media (max-width: 1000px) {
  .hero-copy { width: 64%; }
  .hero-strain { right: 5%; }
  .hero-facts { grid-template-columns: repeat(2,1fr); }
  .hero-fact:nth-of-type(3) { border-left: 0; border-top: 1px solid var(--orbit-line); }
  .hero-fact:nth-of-type(4) { border-top: 1px solid var(--orbit-line); }
  .section-grid { grid-template-columns: 1fr; }
  .evidence-panel { grid-template-columns: 1fr 220px; }
  .platform-steps, .roadmap { grid-template-columns: repeat(3,1fr); }
  .capability-grid { grid-template-columns: 1fr 1fr; }
  .capability:last-child { grid-column: 1 / -1; }
}

@media (max-width: 760px) {
  .aphelion-hero { min-height: 820px; }
  .aphelion-hero::before { background: linear-gradient(180deg,rgba(3,9,20,.1),rgba(3,9,20,.32) 34%,rgba(3,9,20,.96) 63%),url('/images/generated-concepts/aphelion-orbital-chamber-v1.webp') 63% top/auto 430px no-repeat; }
  .hero-inner { min-height: 760px; align-items: end; padding-bottom: 92px; }
  .hero-copy { width: 100%; }
  .aphelion-hero h1 { font-size: clamp(45px,13vw,62px); }
  .aphelion-hero .lede { font-size: 15px; line-height: 1.55; }
  .hero-actions { flex-wrap: wrap; }.hero-actions .concept-btn { flex: 1 1 160px; }
  .hero-strain { top: 170px; right: 18px; font-size: 8px; }
  .hero-facts { width: calc(100% - 32px); grid-template-columns: 1fr; margin-top: -68px; }
  .hero-fact + .hero-fact { border-left: 0; border-top: 1px solid var(--orbit-line); }
  .aphelion-section { padding: 60px 0; }
  .evidence-panel { grid-template-columns: 1fr; }.micrograph { border-left: 0; border-top: 1px solid var(--orbit-line); }
  .platform-steps, .capability-grid, .roadmap, .bio-register, .limits-layout { grid-template-columns: 1fr; }
  .capability:last-child { grid-column: auto; }
  .platform-step { min-height: 0; }
  .orbital-spine { min-height: 460px; }
  .study-cta { grid-template-columns: 1fr; padding: 26px; }
  .aphelion-footer { grid-template-columns: 1fr 1fr; }.aphelion-footer > div:first-child { grid-column: 1 / -1; }
}

@media (prefers-reduced-motion: reduce) {
  .reveal { transform: none; transition-duration: .12s; transition-delay: 0s; }
  .signal-path { animation: none; }
}
