:root {
  --ink: #102a43;
  --ink-2: #243b53;
  --muted: #627d98;
  --paper: #fbfaf5;
  --paper-2: #f2f6f3;
  --white: #ffffff;
  --teal: #0b7a75;
  --teal-2: #22a69a;
  --teal-soft: #dff4ef;
  --coral: #ef6f5e;
  --coral-soft: #ffe7df;
  --gold: #efb64b;
  --blue: #2f6fed;
  --line: rgba(16, 42, 67, 0.13);
  --shadow: 0 24px 70px rgba(16, 42, 67, 0.12);
  --radius: 22px;
  --shell: 1180px;
  --ease: cubic-bezier(.22, 1, .36, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 86px; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: "DM Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

a { color: inherit; }
button { font: inherit; }
.shell { width: min(var(--shell), calc(100% - 48px)); margin-inline: auto; }
.shell.narrow { max-width: 790px; text-align: center; }
.section { padding: 112px 0; }
.skip-link { position: fixed; left: 16px; top: -80px; z-index: 200; background: var(--white); color: var(--ink); padding: 10px 16px; border-radius: 8px; transition: top .2s; }
.skip-link:focus { top: 16px; }

.site-nav {
  position: fixed; inset: 0 0 auto; z-index: 100;
  background: rgba(251, 250, 245, .82);
  backdrop-filter: blur(18px) saturate(150%);
  border-bottom: 1px solid transparent;
  transition: border-color .3s ease, box-shadow .3s ease;
}
.site-nav.scrolled { border-bottom-color: var(--line); box-shadow: 0 8px 30px rgba(16,42,67,.05); }
.nav-inner { width: min(1280px, calc(100% - 40px)); margin: auto; height: 70px; display: flex; align-items: center; gap: 28px; }
.brand { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; margin-right: auto; }
.brand-mark { width: 36px; height: 36px; border-radius: 11px; display: inline-flex; align-items: center; justify-content: center; background: var(--ink); color: var(--white); font-family: "Fraunces", serif; font-size: 13px; font-weight: 700; letter-spacing: -.08em; white-space: nowrap; }
.brand-mark span { color: var(--coral); }
.brand-name { font-weight: 700; font-size: 14px; letter-spacing: -.01em; }
.nav-links { display: flex; align-items: center; gap: 24px; }
.nav-links a, .nav-code { text-decoration: none; font-size: 13px; font-weight: 600; color: var(--ink-2); }
.nav-links a { position: relative; }
.nav-links a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -5px; height: 2px; background: var(--teal); transition: right .25s var(--ease); }
.nav-links a:hover::after, .nav-links a.active::after { right: 0; }
.nav-code { padding: 8px 14px; border: 1px solid var(--line); border-radius: 9px; transition: .25s var(--ease); }
.nav-code:hover { background: var(--ink); color: white; transform: translateY(-1px); }

.hero { position: relative; overflow: hidden; padding: 150px 0 0; color: white; background: linear-gradient(135deg, #0a2137 0%, #103c50 52%, #0b645e 100%); }
.hero::before { content: ""; position: absolute; width: 720px; height: 720px; left: -260px; top: -340px; border-radius: 50%; background: radial-gradient(circle, rgba(47,111,237,.34), transparent 68%); }
.hero::after { content: ""; position: absolute; width: 680px; height: 680px; right: -250px; bottom: -390px; border-radius: 50%; background: radial-gradient(circle, rgba(239,111,94,.27), transparent 68%); }
.hero-noise { position: absolute; inset: 0; opacity: .15; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.17'/%3E%3C/svg%3E"); }
.hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(390px, .92fr); gap: 82px; align-items: center; }
.eyebrow { display: inline-flex; align-items: center; gap: 9px; text-transform: uppercase; letter-spacing: .13em; font-weight: 700; font-size: 12px; color: #bcebe4; }
.eyebrow span { width: 8px; height: 8px; border-radius: 50%; background: var(--coral); box-shadow: 0 0 0 5px rgba(239,111,94,.15); }
.hero h1 { max-width: 720px; font-family: "Fraunces", Georgia, serif; font-size: clamp(46px, 5.4vw, 76px); line-height: 1.01; letter-spacing: -.045em; margin: 22px 0 24px; text-wrap: balance; }
.hero-lead { max-width: 670px; margin: 0; color: rgba(255,255,255,.78); font-size: clamp(17px, 1.7vw, 20px); line-height: 1.7; }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 34px; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 48px; padding: 0 20px; border-radius: 11px; text-decoration: none; font-weight: 700; font-size: 14px; transition: transform .25s var(--ease), background .25s ease, border-color .25s ease, box-shadow .25s ease; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--coral); color: white; box-shadow: 0 14px 30px rgba(239,111,94,.25); }
.button-primary:hover { background: #fb806f; box-shadow: 0 18px 36px rgba(239,111,94,.33); }
.button-ghost { border: 1px solid rgba(255,255,255,.22); color: white; background: rgba(255,255,255,.07); }
.button-ghost:hover { background: rgba(255,255,255,.13); border-color: rgba(255,255,255,.42); }
.hero-byline { margin: 28px 0 0; color: rgba(255,255,255,.55); font-size: 13px; }
.hero-byline strong { color: rgba(255,255,255,.88); font-weight: 600; }

.hero-visual { position: relative; border: 1px solid rgba(255,255,255,.18); border-radius: 28px; padding: 26px; background: rgba(255,255,255,.09); box-shadow: 0 30px 80px rgba(0,0,0,.25); backdrop-filter: blur(12px); }
.visual-label { text-transform: uppercase; letter-spacing: .14em; color: rgba(255,255,255,.55); font-size: 10px; font-weight: 700; margin-bottom: 18px; }
.funnel-stage { display: flex; align-items: center; gap: 18px; min-height: 72px; border-radius: 16px; padding: 13px 16px; background: rgba(255,255,255,.07); }
.funnel-stage > div:last-child { display: flex; flex-direction: column; }
.funnel-stage strong { font-family: "Fraunces", serif; font-size: 20px; line-height: 1.1; }
.funnel-stage span { color: rgba(255,255,255,.6); font-size: 12px; }
.stage-genome { width: 100%; }
.stage-variants { width: 83%; margin: auto; }
.stage-shortlist { width: 66%; margin: auto; }
.funnel-arrow { text-align: center; line-height: 24px; color: #7dd6cb; }
.genome-dots, .variant-specks, .shortlist-lines { flex: 0 0 48px; height: 44px; }
.genome-dots { border-radius: 9px; opacity: .85; background-image: radial-gradient(circle, #79d8ce 1.5px, transparent 1.7px); background-size: 7px 7px; }
.variant-specks { display: grid; grid-template-columns: repeat(4, 1fr); gap: 5px; align-content: center; }
.variant-specks i { display: block; width: 7px; height: 7px; background: var(--gold); border-radius: 50%; animation: speck 2.8s ease-in-out infinite; }
.variant-specks i:nth-child(2n) { animation-delay: -.8s; background: #7dd6cb; }
.variant-specks i:nth-child(3n) { animation-delay: -1.5s; }
@keyframes speck { 50% { opacity: .25; transform: scale(.7); } }
.shortlist-lines { display: flex; flex-direction: column; justify-content: center; gap: 7px; }
.shortlist-lines i { height: 5px; border-radius: 5px; background: #7dd6cb; }
.shortlist-lines i:nth-child(2) { width: 72%; }
.shortlist-lines i:nth-child(3) { width: 45%; }
.answer-chip { width: 78%; margin: 0 auto; display: grid; grid-template-columns: auto 1fr auto; gap: 13px; align-items: center; padding: 13px 14px; background: white; color: var(--ink); border-radius: 15px; box-shadow: 0 18px 40px rgba(0,0,0,.18); }
.answer-rank { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; color: white; background: var(--coral); font-weight: 800; }
.answer-chip strong, .answer-chip small { display: block; }
.answer-chip small { color: var(--muted); font-size: 10px; }
.answer-check { display: grid; place-items: center; width: 27px; height: 27px; border-radius: 50%; background: var(--teal-soft); color: var(--teal); font-weight: 800; }
.hero-proof { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 92px; border-top: 1px solid rgba(255,255,255,.14); }
.hero-proof > div { min-height: 108px; display: flex; flex-direction: column; justify-content: center; padding: 18px 28px; border-right: 1px solid rgba(255,255,255,.14); }
.hero-proof > div:first-child { border-left: 1px solid rgba(255,255,255,.14); }
.hero-proof strong { font-family: "Fraunces", serif; font-size: 29px; letter-spacing: -.03em; }
.hero-proof span { color: rgba(255,255,255,.57); font-size: 12px; text-transform: uppercase; letter-spacing: .09em; }

.hero-dna { position: absolute; right: 2%; top: 7%; width: 280px; height: 180px; opacity: .06; transform: rotate(-22deg); }
.hero-dna::before, .hero-dna::after { content: ""; position: absolute; top: 15px; bottom: 15px; width: 4px; border-radius: 4px; background: white; animation: dna-wave 4s ease-in-out infinite; }
.hero-dna::before { left: 20%; }
.hero-dna::after { right: 20%; animation-delay: -2s; }
.hero-dna span { position: absolute; left: 21%; width: 58%; height: 2px; background: white; transform-origin: center; }
.hero-dna span:nth-child(1){top:25px; transform:rotate(18deg)} .hero-dna span:nth-child(2){top:50px; transform:rotate(-18deg)} .hero-dna span:nth-child(3){top:75px; transform:rotate(18deg)} .hero-dna span:nth-child(4){top:100px; transform:rotate(-18deg)} .hero-dna span:nth-child(5){top:125px; transform:rotate(18deg)} .hero-dna span:nth-child(6){top:150px; transform:rotate(-18deg)}
@keyframes dna-wave { 50% { transform: translateX(16px); } }

.section-kicker { margin-bottom: 14px; color: var(--teal); text-transform: uppercase; letter-spacing: .14em; font-size: 12px; font-weight: 800; }
.section-title { margin: 0; font-family: "Fraunces", Georgia, serif; font-size: clamp(38px, 4.7vw, 59px); line-height: 1.08; letter-spacing: -.035em; text-wrap: balance; }
.section-intro { margin: 24px auto 0; color: var(--muted); font-size: 18px; line-height: 1.75; }
.section-kicker.light { color: #7dd6cb; }
.section-title.light, .section-intro.light { color: white; }
.section-intro.light { color: rgba(255,255,255,.67); }
.mini-label { display: block; margin-bottom: 10px; color: var(--teal); text-transform: uppercase; letter-spacing: .13em; font-size: 11px; font-weight: 800; }

.intro { background: var(--paper); }
.analogy-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 62px; }
.analogy-card { position: relative; min-height: 355px; padding: 30px; background: white; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: 0 16px 40px rgba(16,42,67,.05); overflow: hidden; transition: transform .35s var(--ease), box-shadow .35s var(--ease); }
.analogy-card:hover { transform: translateY(-6px); box-shadow: var(--shadow); }
.analogy-number { position: absolute; top: 24px; right: 24px; color: #bcccdc; font-weight: 800; font-size: 12px; }
.analogy-icon { width: 78px; height: 78px; border-radius: 22px; margin-bottom: 34px; display: grid; place-items: center; background: var(--teal-soft); color: var(--teal); }
.analogy-card:nth-child(2) .analogy-icon { background: var(--coral-soft); color: var(--coral); }
.analogy-card:nth-child(3) .analogy-icon { background: #fff3d8; color: #c28214; }
.analogy-card h3 { font-family: "Fraunces", serif; font-size: 25px; line-height: 1.2; margin: 0 0 14px; }
.analogy-card p { color: var(--muted); margin: 0; }
.book-icon span { width: 35px; height: 43px; border: 3px solid currentColor; border-radius: 4px 10px 10px 4px; position: relative; }
.book-icon span::after { content: ""; position: absolute; left: 7px; top: 9px; width: 17px; height: 3px; background: currentColor; box-shadow: 0 8px 0 currentColor, 0 16px 0 currentColor; opacity: .65; }
.sieve-icon span { width: 44px; height: 25px; border: 3px solid currentColor; border-top: 0; clip-path: polygon(0 0,100% 0,65% 100%,35% 100%); }
.sieve-icon i { position: absolute; width: 6px; height: 6px; background: currentColor; border-radius: 50%; transform: translate(-12px,-22px); box-shadow: 12px -5px 0 currentColor,24px 1px 0 currentColor; }
.compass-icon span { width: 45px; height: 45px; border: 3px solid currentColor; border-radius: 50%; position: relative; }
.compass-icon span::before { content: ""; position: absolute; width: 7px; height: 28px; top: 5px; left: 16px; background: currentColor; clip-path: polygon(50% 0,100% 100%,50% 75%,0 100%); transform: rotate(28deg); }

.answer-spotlight { margin-top: 78px; min-height: 440px; display: grid; grid-template-columns: 1.2fr .8fr; align-items: center; gap: 60px; padding: 58px 70px; border-radius: 30px; background: linear-gradient(135deg, #e9f7f3, #fff5eb); border: 1px solid rgba(11,122,117,.13); overflow: hidden; }
.spotlight-copy h3 { margin: 0 0 18px; font-family: "Fraunces", serif; font-size: clamp(33px, 4vw, 48px); line-height: 1.1; letter-spacing: -.03em; }
.spotlight-copy h3 em { color: var(--teal); }
.spotlight-copy p { color: var(--ink-2); font-size: 17px; }
.spotlight-copy .spotlight-note { font-size: 13px; color: var(--muted); border-left: 3px solid var(--coral); padding-left: 14px; margin-top: 22px; }
.score-orbit { position: relative; min-height: 300px; display: grid; place-items: center; }
.orbit-core { position: relative; z-index: 3; width: 150px; height: 150px; border-radius: 50%; display: flex; align-items: center; justify-content: center; gap: 8px; color: white; background: var(--ink); box-shadow: 0 24px 50px rgba(16,42,67,.25); }
.orbit-core strong { font-family: "Fraunces", serif; font-size: 52px; line-height: 1; }
.orbit-core span { font-size: 11px; line-height: 1.25; text-transform: uppercase; letter-spacing: .06em; color: #bcebe4; }
.orbit-ring { position: absolute; border-radius: 50%; border: 1px dashed rgba(11,122,117,.3); animation: orbit 20s linear infinite; }
.ring-one { width: 220px; height: 220px; }
.ring-two { width: 290px; height: 290px; animation-direction: reverse; animation-duration: 27s; }
@keyframes orbit { to { transform: rotate(360deg); } }
.orbit-tag { position: absolute; z-index: 4; background: white; padding: 7px 11px; border-radius: 9px; box-shadow: 0 10px 28px rgba(16,42,67,.15); font-size: 11px; font-weight: 800; }
.tag-one { top: 42px; right: 14px; color: var(--teal); }
.tag-two { bottom: 45px; left: 0; color: var(--coral); }

.approach { background: var(--paper-2); }
.pipeline { display: grid; grid-template-columns: 1fr 24px 1fr 24px 1fr 24px 1fr 24px 1fr; gap: 0; align-items: stretch; margin-top: 68px; }
.pipeline-step { position: relative; padding: 24px 20px; min-height: 250px; border-radius: 18px; background: white; border: 1px solid var(--line); }
.step-index { color: #9fb3c8; font-size: 11px; font-weight: 800; }
.step-symbol { width: 54px; height: 54px; margin: 26px 0 20px; display: grid; place-items: center; border-radius: 16px; background: var(--teal-soft); color: var(--teal); font-family: "Fraunces", serif; font-size: 22px; font-weight: 700; }
.pipeline-step:nth-of-type(3n) .step-symbol { background: var(--coral-soft); color: var(--coral); }
.pipeline-step h3 { margin: 0 0 8px; font-family: "Fraunces", serif; font-size: 23px; }
.pipeline-step p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.6; }
.pipeline-link { align-self: center; height: 1px; background: #9fb3c8; position: relative; }
.pipeline-link::after { content: ""; position: absolute; right: -1px; top: -3px; width: 7px; height: 7px; border-top: 1px solid #9fb3c8; border-right: 1px solid #9fb3c8; transform: rotate(45deg); }

.model-panel { margin-top: 80px; display: grid; grid-template-columns: 1fr 1fr; border-radius: 28px; overflow: hidden; background: var(--ink); color: white; box-shadow: var(--shadow); }
.model-panel-copy { padding: 58px 60px; }
.model-panel-copy .mini-label { color: #7dd6cb; }
.model-panel-copy h3 { font-family: "Fraunces", serif; font-size: 42px; line-height: 1.1; margin: 0 0 18px; letter-spacing: -.03em; }
.model-panel-copy p { color: rgba(255,255,255,.65); margin: 0; }
.text-button { margin-top: 26px; padding: 0; border: 0; background: none; color: white; cursor: pointer; font-weight: 700; }
.text-button span { display: inline-grid; place-items: center; width: 23px; height: 23px; margin-left: 6px; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; transition: transform .25s ease; }
.text-button[aria-expanded="true"] span { transform: rotate(45deg); }
.panel-illustration { position: relative; min-height: 430px; background: radial-gradient(circle at center, rgba(34,166,154,.28), transparent 48%), linear-gradient(135deg,#153c52,#0b5c59); }
.panel-illustration svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.panel-illustration path { fill: none; stroke: rgba(255,255,255,.28); stroke-width: 1.5; stroke-dasharray: 5 5; }
.expert, .consensus-center { position: absolute; z-index: 2; display: grid; place-items: center; border-radius: 50%; text-align: center; font-size: 11px; font-weight: 800; box-shadow: 0 14px 35px rgba(0,0,0,.2); }
.expert { width: 72px; height: 72px; background: rgba(255,255,255,.93); color: var(--ink); }
.expert-tree { left: 11%; top: 9%; } .expert-net { right: 11%; top: 9%; } .expert-bayes { left: 11%; bottom: 9%; } .expert-sbnn { right: 11%; bottom: 9%; }
.expert-tree { border: 5px solid #efb64b; } .expert-net { border: 5px solid #72a7ff; } .expert-bayes { border: 5px solid #ef8e80; } .expert-sbnn { border: 5px solid #61d4c7; }
.consensus-center { width: 108px; height: 108px; left: calc(50% - 54px); top: calc(50% - 54px); color: white; background: var(--coral); font-family: "Fraunces", serif; font-size: 15px; }
.model-grid { margin-top: 24px; display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
.model-grid[hidden] { display: none; }
.model-grid article { padding: 23px; border-radius: 16px; background: white; border: 1px solid var(--line); animation: model-in .45s var(--ease) both; }
.model-grid article:nth-child(2){animation-delay:.04s}.model-grid article:nth-child(3){animation-delay:.08s}.model-grid article:nth-child(4){animation-delay:.12s}.model-grid article:nth-child(5){animation-delay:.16s}.model-grid article:nth-child(6){animation-delay:.2s}.model-grid article:nth-child(7){animation-delay:.24s}.model-grid article:nth-child(8){animation-delay:.28s}.model-grid article:nth-child(9){animation-delay:.32s}
@keyframes model-in { from { opacity: 0; transform: translateY(12px); } }
.model-grid article > span { color: var(--teal); font-size: 10px; text-transform: uppercase; letter-spacing: .1em; font-weight: 800; }
.model-grid h3 { margin: 7px 0 6px; font-family: "Fraunces", serif; font-size: 20px; }
.model-grid p { color: var(--muted); font-size: 13px; margin: 0; }
.model-grid .selected-model { color: white; background: var(--teal); border-color: var(--teal); }
.model-grid .selected-model > span, .model-grid .selected-model p { color: rgba(255,255,255,.72); }
.model-grid .augmented-model { border-color: rgba(239,111,94,.45); background: #fff8f4; }

.results { color: white; background: linear-gradient(155deg, #071d30 0%, #102a43 58%, #113f4c 100%); }
.result-ladder { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; margin-top: 68px; }
.result-card { display: flex; flex-direction: column; min-height: 370px; padding: 28px; border: 1px solid rgba(255,255,255,.13); border-radius: 20px; background: rgba(255,255,255,.055); }
.result-card.featured { background: linear-gradient(150deg, rgba(34,166,154,.3), rgba(239,111,94,.16)); border-color: rgba(125,214,203,.35); }
.result-level { color: #7dd6cb; font-size: 10px; text-transform: uppercase; letter-spacing: .12em; font-weight: 800; }
.result-number { margin: 42px 0 8px; font-family: "Fraunces", serif; font-size: 58px; line-height: .95; letter-spacing: -.045em; }
.result-number span { font-size: .45em; color: #7dd6cb; }
.result-card h3 { margin: 0 0 16px; font-family: "Fraunces", serif; font-size: 22px; }
.result-card p { color: rgba(255,255,255,.59); font-size: 13px; }
.result-proof { margin-top: auto; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.82); font-size: 11px; font-weight: 700; }

.beyond { background: var(--paper); }
.split-heading { display: grid; grid-template-columns: 1.15fr .85fr; gap: 80px; align-items: end; }
.split-heading .section-intro { margin: 0; }
.evidence-road { margin-top: 74px; position: relative; }
.evidence-road::before { content: ""; position: absolute; left: 31px; top: 25px; bottom: 25px; width: 1px; background: linear-gradient(var(--teal),var(--coral)); }
.evidence-stop { display: grid; grid-template-columns: 64px 1fr; gap: 30px; padding: 20px 0 32px; }
.evidence-dot { position: relative; z-index: 2; width: 64px; height: 64px; display: grid; place-items: center; border-radius: 50%; color: white; background: var(--teal); border: 9px solid var(--paper); box-shadow: 0 0 0 1px rgba(11,122,117,.2); font-family: "Fraunces", serif; font-weight: 700; }
.evidence-stop:nth-child(2) .evidence-dot { background: #2f6fed; }
.evidence-stop:nth-child(3) .evidence-dot { background: var(--coral); }
.evidence-stop > div:last-child { max-width: 760px; padding-top: 4px; }
.evidence-stop span { color: var(--teal); text-transform: uppercase; letter-spacing: .12em; font-size: 10px; font-weight: 800; }
.evidence-stop h3 { margin: 4px 0 7px; font-family: "Fraunces", serif; font-size: 28px; }
.evidence-stop p { color: var(--muted); margin: 0; }

.benchmark-card { display: grid; grid-template-columns: .8fr 1.2fr; gap: 54px; align-items: center; margin-top: 58px; padding: 58px; border-radius: 28px; background: white; border: 1px solid var(--line); box-shadow: var(--shadow); }
.benchmark-copy h3 { margin: 0 0 17px; font-family: "Fraunces", serif; font-size: 39px; line-height: 1.12; letter-spacing: -.03em; }
.benchmark-copy p { color: var(--ink-2); }
.benchmark-copy .benchmark-context { color: var(--muted); font-size: 12px; padding-left: 12px; border-left: 2px solid var(--gold); }
.bar-chart { padding: 26px; border-radius: 20px; background: #f7f9fb; }
.chart-head { display: grid; grid-template-columns: 1fr 1fr; padding-left: 126px; gap: 20px; color: var(--muted); text-transform: uppercase; letter-spacing: .09em; font-size: 9px; font-weight: 800; text-align: center; }
.chart-row { display: grid; grid-template-columns: 110px 1fr 1fr; gap: 16px; align-items: center; margin-top: 23px; }
.chart-name strong, .chart-name small { display: block; }
.chart-name strong { font-size: 12px; }
.chart-name small { color: var(--muted); font-size: 9px; }
.bar-track { position: relative; height: 32px; border-radius: 6px; background: repeating-linear-gradient(90deg,rgba(16,42,67,.055) 0,rgba(16,42,67,.055) 1px,transparent 1px,transparent 25%); overflow: hidden; }
.bar { position: absolute; left: 0; top: 0; bottom: 0; width: var(--value); border-radius: 6px; transform-origin: left; transform: scaleX(0); transition: transform 1.2s var(--ease); }
.bar-chart.is-visible .bar { transform: scaleX(1); }
.bar-track span { position: absolute; right: 6px; top: 7px; font-size: 10px; font-weight: 800; }
.bar.sbnn { background: var(--teal-2); }.bar.revel { background: #6e8fc9; }.bar.alpha { background: #f0c46c; }
.chart-axis { display: flex; justify-content: space-between; margin: 20px 0 0 126px; padding-top: 8px; border-top: 1px solid var(--line); color: var(--muted); font-size: 9px; }

.uncertainty-callout { display: grid; grid-template-columns: 260px 1fr; gap: 50px; align-items: center; margin-top: 76px; padding: 52px 70px; border-radius: 28px; color: white; background: linear-gradient(135deg,#0b5e59,#0a7970); }
.uncertainty-callout .mini-label { color: #a7ebe3; }
.uncertainty-callout h3 { margin: 0 0 15px; font-family: "Fraunces", serif; font-size: 39px; line-height: 1.12; }
.uncertainty-callout p { margin: 0; color: rgba(255,255,255,.7); }
.uncertainty-rings { position: relative; height: 210px; display: grid; place-items: center; }
.uncertainty-rings span { position: absolute; border-radius: 50%; border: 1px solid rgba(255,255,255,.25); animation: uncertainty-pulse 3s ease-out infinite; }
.uncertainty-rings span:nth-child(1){width:80px;height:80px}.uncertainty-rings span:nth-child(2){width:140px;height:140px;animation-delay:-1s}.uncertainty-rings span:nth-child(3){width:200px;height:200px;animation-delay:-2s}
.uncertainty-rings i { width: 64px; height: 64px; display: grid; place-items: center; border-radius: 50%; background: white; color: var(--teal); font-family: "Fraunces", serif; font-size: 32px; font-style: normal; font-weight: 700; }
@keyframes uncertainty-pulse { 50% { opacity: .25; transform: scale(.92); } }

.transparency { background: #f1eee5; }
.transparency-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; align-items: center; }
.transparency-copy p { max-width: 560px; color: var(--muted); font-size: 17px; }
.transparency-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 22px; margin-top: 27px; }
.button-dark { color: white; background: var(--ink); }
.report-link { color: var(--teal); text-decoration: none; font-size: 13px; font-weight: 700; }
.honesty-card { padding: 40px; background: white; border-radius: 22px; border: 1px solid rgba(16,42,67,.1); }
.honesty-card ul { list-style: none; padding: 0; margin: 20px 0; }
.honesty-card li { position: relative; padding: 12px 0 12px 27px; border-bottom: 1px solid var(--line); color: var(--ink-2); font-size: 14px; }
.honesty-card li::before { content: "✓"; position: absolute; left: 0; color: var(--teal); font-weight: 800; }
.honesty-card p { color: var(--muted); font-size: 12px; }

.team { padding-top: 92px; }
.team-card { padding: 58px 64px; border-radius: 28px; color: white; background: var(--ink); }
.team-card > div:first-child { display: flex; align-items: end; justify-content: space-between; gap: 30px; }
.team-card .section-kicker { color: #7dd6cb; }
.team-card h2 { max-width: 720px; margin: 0; font-family: "Fraunces", serif; font-size: 44px; line-height: 1.12; letter-spacing: -.03em; }
.team-members { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 42px; }
.team-members article { display: flex; align-items: center; gap: 17px; padding: 18px; border: 1px solid rgba(255,255,255,.12); border-radius: 16px; background: rgba(255,255,255,.05); }
.avatar { flex: 0 0 52px; height: 52px; display: grid; place-items: center; border-radius: 15px; font-family: "Fraunces", serif; font-weight: 700; }
.avatar-m { background: var(--teal-2); }.avatar-b { background: var(--coral); }
.team-members strong, .team-members small { display: block; }
.team-members small { color: rgba(255,255,255,.56); font-size: 11px; }
.team-links { display: flex; gap: 28px; margin-top: 30px; }
.team-links a { color: #a7ebe3; text-decoration: none; font-size: 13px; font-weight: 700; }

footer { padding: 36px 0 50px; background: var(--paper); }
.footer-inner { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding-top: 28px; border-top: 1px solid var(--line); color: var(--muted); font-size: 12px; }
.footer-inner strong, .footer-inner span { display: block; }
.footer-inner strong { color: var(--ink); }
.footer-inner p { margin: 0; }
.footer-inner a { color: var(--teal); text-decoration: none; font-weight: 700; }

.reveal { opacity: 0; transform: translateY(22px); transition: opacity .75s var(--ease), transform .75s var(--ease); }
.reveal.is-visible { opacity: 1; transform: none; }

@media (max-width: 1040px) {
  .nav-links { display: none; }
  .hero-grid { grid-template-columns: 1fr 390px; gap: 40px; }
  .pipeline { grid-template-columns: repeat(5,1fr); gap: 10px; }
  .pipeline-link { display: none; }
  .pipeline-step { padding: 20px 16px; }
  .benchmark-card { grid-template-columns: 1fr; }
  .result-ladder { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 820px) {
  .section { padding: 82px 0; }
  .hero { padding-top: 120px; }
  .hero-grid { grid-template-columns: 1fr; }
  .hero-copy { text-align: center; }
  .hero-lead { margin-inline: auto; }
  .hero-actions { justify-content: center; }
  .hero-visual { max-width: 520px; width: 100%; margin: 0 auto; }
  .hero-proof { grid-template-columns: repeat(2,1fr); margin-top: 64px; }
  .hero-proof > div:nth-child(3) { border-left: 1px solid rgba(255,255,255,.14); border-top: 1px solid rgba(255,255,255,.14); }
  .hero-proof > div:nth-child(4) { border-top: 1px solid rgba(255,255,255,.14); }
  .analogy-grid { grid-template-columns: 1fr; }
  .analogy-card { min-height: 0; }
  .answer-spotlight { grid-template-columns: 1fr; padding: 44px; }
  .pipeline { grid-template-columns: 1fr 1fr; }
  .pipeline-step:last-child { grid-column: 1 / -1; }
  .model-panel { grid-template-columns: 1fr; }
  .model-grid { grid-template-columns: 1fr 1fr; }
  .split-heading, .transparency-grid { grid-template-columns: 1fr; gap: 28px; }
  .uncertainty-callout { grid-template-columns: 170px 1fr; padding: 42px; }
  .team-members { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
  .shell { width: min(100% - 30px, var(--shell)); }
  .brand-name { display: none; }
  .nav-inner { width: calc(100% - 24px); height: 62px; }
  .nav-code { margin-left: auto; }
  .hero { padding-top: 105px; }
  .hero h1 { font-size: 45px; }
  .hero-grid { gap: 48px; }
  .hero-actions { flex-direction: column; }
  .hero-byline { line-height: 1.6; }
  .hero-visual { padding: 18px; }
  .stage-variants { width: 90%; }.stage-shortlist { width: 78%; }.answer-chip { width: 94%; }
  .hero-proof > div { padding: 16px; min-height: 90px; }
  .hero-proof strong { font-size: 24px; }
  .hero-proof span { font-size: 9px; }
  .section-title { font-size: 38px; }
  .section-intro { font-size: 16px; }
  .answer-spotlight { padding: 32px 24px; gap: 20px; }
  .score-orbit { transform: scale(.88); }
  .pipeline { grid-template-columns: 1fr; }
  .pipeline-step:last-child { grid-column: auto; }
  .pipeline-step { min-height: 210px; }
  .model-panel-copy { padding: 38px 26px; }
  .model-panel-copy h3 { font-size: 34px; }
  .panel-illustration { min-height: 360px; }
  .model-grid, .result-ladder { grid-template-columns: 1fr; }
  .result-card { min-height: 320px; }
  .evidence-stop { grid-template-columns: 52px 1fr; gap: 18px; }
  .evidence-dot { width: 52px; height: 52px; }
  .evidence-road::before { left: 25px; }
  .evidence-stop h3 { font-size: 23px; }
  .benchmark-card { padding: 30px 18px; }
  .benchmark-copy { padding: 0 8px; }
  .benchmark-copy h3 { font-size: 33px; }
  .bar-chart { padding: 18px 12px; overflow-x: auto; }
  .chart-head, .chart-row, .chart-axis { min-width: 490px; }
  .uncertainty-callout { grid-template-columns: 1fr; padding: 34px 26px; }
  .uncertainty-rings { height: 170px; }
  .uncertainty-rings span:nth-child(3){width:160px;height:160px}
  .uncertainty-callout h3 { font-size: 32px; }
  .honesty-card { padding: 28px 22px; }
  .team-card { padding: 38px 24px; }
  .team-card h2 { font-size: 34px; }
  .team-links, .footer-inner { flex-direction: column; align-items: flex-start; }
  .footer-inner p { display: none; }
}

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