:root {
  --ink: #192421;
  --muted: #69736d;
  --paper: #ffffff;
  --line: #e2e6df;
  --green: #b8ed8f;
  --deep-green: #183a2e;
  --purple: #8d7bea;
  --sans: "Inter", sans-serif;
  --display: "Degular", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--sans); -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
.section-wrap { width: min(1220px, calc(100% - 96px)); margin-inline: auto; }
.site-header { position: relative; z-index: 10; display: flex; align-items: center; width: min(1340px, calc(100% - 96px)); height: 88px; margin: auto; border-bottom: 1px solid var(--line); }
.brand { display: inline-flex; align-items: center; gap: 9px; font: 800 25px/1 var(--display); letter-spacing: -1.6px; }
.brand-period, .side-logo span, .team-center span { color: #67a94e; }
.brand-mark { width: 24px; height: 23px; display: flex; align-items: center; gap: 2px; transform: skew(-23deg); }
.brand-mark i { display: block; width: 6px; border-radius: 7px; background: #79ba5a; }
.brand-mark i:nth-child(1) { height: 13px; margin-top: 8px; }.brand-mark i:nth-child(2) { height: 21px; }.brand-mark i:nth-child(3) { height: 16px; margin-top: 5px; }
.navigation { display: flex; gap: 34px; margin: auto; font-size: 13px; font-weight: 600; }
.navigation a { transition: color .2s; }.navigation a:hover,.login-link:hover { color: #5d9a44; }.chevron { margin-left: 3px; color: #89918b; }
.header-actions { display: flex; align-items: center; gap: 25px; font-size: 13px; font-weight: 600; }.button { display: inline-flex; align-items: center; justify-content: center; gap: 23px; min-height: 51px; padding: 0 21px; border-radius: 5px; font-size: 13px; font-weight: 700; transition: transform .2s, background .2s; }.button:hover { transform: translateY(-2px); }.button span { font-size: 17px; }.button-small { min-height: 41px; padding-inline: 15px; gap: 12px; font-size: 12px; }.button-dark { color: white; background: var(--ink); }.button-dark:hover { background: #294238; }.menu-toggle { display: none; }

.hero { display: grid; grid-template-columns: .88fr 1.12fr; gap: 36px; align-items: center; min-height: 650px; padding-top: 35px; padding-bottom: 54px; }
.hero-copy { padding: 18px 0 0 12px; }.eyebrow,.section-kicker { color: #6d786f; font-size: 10px; font-weight: 700; letter-spacing: 1.25px; }.eyebrow { display: flex; align-items: center; gap: 9px; margin-bottom: 25px; }.eyebrow-dot { width: 7px; height: 7px; border-radius: 50%; background: #75ba56; box-shadow: 0 0 0 4px #e7f2e1; }
h1,h2,h3,p { margin-top: 0; }h1,h2 { font-family: var(--display); letter-spacing: -3.8px; }h1 { margin-bottom: 22px; font-size: clamp(54px, 6.2vw, 82px); line-height: .99; font-weight: 600; }h1 span { color: #77ac63; }.hero-description { max-width: 430px; margin-bottom: 27px; color: #58645c; font-size: 15px; line-height: 1.8; }.hero-actions { display: flex; align-items: center; gap: 24px; }.text-link { font-size: 12px; font-weight: 700; }.text-link span { margin-left: 7px; color: #6da655; }.hero-proof { display: flex; align-items: center; gap: 12px; margin-top: 49px; }.hero-proof p { margin: 0; color: #69736d; font-size: 11px; }.hero-proof strong { color: var(--ink); }.avatar-stack { display: flex; padding-left: 2px; }.avatar-stack span,.avatar-stack b { display: grid; place-items: center; width: 27px; height: 27px; margin-left: -3px; border: 2px solid var(--paper); border-radius: 50%; background: #d4a883; color: white; font-size: 7px; font-weight: 700; }.avatar-stack span:nth-child(2) { background: #6c8e7c; }.avatar-stack span:nth-child(3) { background: #b987ab; }.avatar-stack b { background: #e9eee5; color: #63705f; }

.hero-visual { position: relative; display: grid; place-items: center; min-width: 0; min-height: 510px; isolation: isolate; }.orbit { position: absolute; z-index: -1; border: 1px solid #e4e9df; border-radius: 50%; }.orbit-one { width: 510px; height: 510px; }.orbit-two { width: 405px; height: 405px; border-style: dashed; }.dashboard-card { position: relative; width: min(100%, 570px); overflow: hidden; border: 1px solid #e3e8e1; border-radius: 10px; background: white; box-shadow: 0 22px 65px #1c342114, 0 5px 14px #1c34210c; transform: rotate(-1deg); }.dashboard-top { display: flex; align-items: center; gap: 12px; height: 39px; padding: 0 14px; border-bottom: 1px solid #edf0eb; color: #9aa29b; font-size: 8px; }.dashboard-top button { margin-left: auto; border: 0; background: none; color: #849087; font-size: 17px; }.window-dots { display: flex; gap: 4px; }.window-dots i { width: 5px; height: 5px; border-radius: 50%; background: #e5b5aa; }.window-dots i:nth-child(2) { background: #e8d899; }.window-dots i:nth-child(3) { background: #b7d8a7; }.dashboard-body { display: flex; min-height: 367px; }.dash-sidebar { display: flex; flex: 0 0 44px; flex-direction: column; align-items: center; gap: 17px; padding: 12px 0 8px; border-right: 1px solid #eff1ed; }.side-logo { margin-bottom: 4px; font: 800 19px var(--display); }.side-icon { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 5px; color: #a4ada5; font-size: 13px; }.side-icon.active { background: #eaf4e4; color: #5e9d48; }.side-user { display: grid; place-items: center; width: 23px; height: 23px; margin-top: auto; border-radius: 50%; background: #eee9fa; color: #7665c3; font-size: 7px; font-weight: 700; }
.dash-content { flex: 1; min-width: 0; padding: 17px 18px 14px; }.dash-heading { display: flex; justify-content: space-between; align-items: center; }.dash-heading small { color: #98a098; font-size: 6px; letter-spacing: .6px; }.dash-heading h3 { margin: 5px 0 0; font: 700 13px var(--display); letter-spacing: -.4px; }.dash-heading h3 span { color: #dfa74f; font-size: 11px; }.new-run { padding: 6px 9px; border: 0; border-radius: 4px; background: #243c30; color: white; font-size: 7px; }
.dash-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; margin-top: 17px; }.dash-stats > div { display: flex; flex-direction: column; min-height: 67px; padding: 9px 8px; border: 1px solid #edf0eb; border-radius: 5px; }.dash-stats small { color: #89938b; font-size: 6px; }.dash-stats b { margin: 4px 0 2px; font: 700 18px var(--display); letter-spacing: -.7px; }.dash-stats .unit { font-size: 10px; }.dash-stats div > span { color: #a0a8a0; font-size: 6px; }.dash-stats .positive { color: #65a84b; }.run-heading { display: flex; justify-content: space-between; margin: 18px 0 8px; font-size: 8px; }.run-heading a { color: #6c9d59; font-size: 7px; }.run-row { display: flex; align-items: center; min-height: 39px; gap: 9px; border-top: 1px solid #f0f2ee; }.run-symbol { display: grid; place-items: center; width: 23px; height: 23px; border-radius: 5px; font-size: 11px; }.symbol-green { background: #e9f4e5; color: #69a44f; }.symbol-blue { background: #e8effa; color: #668bd2; }.symbol-orange { background: #fbefe4; color: #d7955b; }.run-name { display: flex; flex: 1; flex-direction: column; gap: 2px; }.run-name b { font-size: 7px; }.run-name small,.run-time { color: #98a198; font-size: 6px; }.run-state { display: flex; align-items: center; gap: 4px; color: #69786b; font-size: 6px; }.state-dot { width: 5px; height: 5px; border-radius: 50%; background: #edae50; box-shadow: 0 0 0 3px #fff4dc; }.state-dot.done { background: #6db454; box-shadow: 0 0 0 3px #eaf5e6; }.run-time { width: 39px; text-align: right; }.chart-label { display: flex; justify-content: space-between; margin-top: 13px; color: #637067; font-size: 7px; }.chart-label span:nth-child(2) { color: #969f97; font-size: 6px; }.mini-chart { position: relative; height: 56px; margin-top: 7px; }.mini-chart svg { position: relative; width: 100%; height: 100%; overflow: visible; }.chart-area { fill: url(#chart-fill); }.chart-line { fill: none; stroke: #83bf69; stroke-width: 2; vector-effect: non-scaling-stroke; }.chart-grid { position: absolute; inset: 0; background: repeating-linear-gradient(to bottom, transparent 0, transparent 17px, #f0f3ed 18px); }.floating-note { position: absolute; z-index: 2; display: flex; align-items: center; gap: 10px; padding: 11px 13px; border: 1px solid #edf0eb; border-radius: 7px; background: white; box-shadow: 0 10px 28px #1c34211a; }.note-top { top: 41px; right: -3px; }.note-icon { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 7px; font-size: 14px; }.note-purple { color: #8978d5; background: #f0edfb; }.floating-note strong,.floating-note small { display: block; }.floating-note strong { font-size: 9px; }.floating-note small { margin-top: 3px; color: #959e96; font-size: 7px; }.check { display: grid; place-items: center; width: 15px; height: 15px; margin-left: 5px; border-radius: 50%; background: #e7f3e1; color: #62a34b; font-size: 9px; }.note-bottom { bottom: 30px; left: -11px; padding: 9px 12px; }.compute-icon { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 6px; background: #eaf3e6; color: #69a34f; font-size: 15px; }.note-bottom small { font-size: 6px; letter-spacing: .6px; }.note-bottom strong { margin-top: 3px; font-size: 12px; }.sparkline { margin-left: 8px; color: #75b45b; font-size: 23px; }.visual-spark { position: absolute; color: #e1b869; }.spark-a { top: 102px; left: 9px; font-size: 20px; }.spark-b { right: 22px; bottom: 75px; color: #9c89d5; font-size: 13px; }

.trust-strip { display: flex; align-items: center; gap: 42px; min-height: 119px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }.trust-strip > p { flex: 0 0 auto; margin: 0; color: #89928a; font-size: 8px; font-weight: 700; letter-spacing: .9px; line-height: 1.7; }.wordmarks { display: flex; flex: 1; justify-content: space-between; align-items: center; gap: 18px; color: #78827a; }.wordmark { opacity: .82; white-space: nowrap; }.roche { font: 700 15px var(--display); }.bio { font: 800 19px var(--display); letter-spacing: -1px; }.bio span { color: #70a84f; }.north { font: 700 11px var(--display); letter-spacing: 1px; text-align: center; }.north small { display: block; font: 600 6px var(--sans); letter-spacing: 2px; }.arc { font: 700 17px var(--display); letter-spacing: -1px; }.arc span { color: #7eab66; }.field { font: 600 14px var(--display); }.nova { font: 700 17px var(--display); letter-spacing: -1px; }.nova span { color: #71a854; }
.intro { padding-top: 139px; padding-bottom: 57px; }.section-kicker { display: flex; align-items: center; gap: 10px; }.section-kicker > span:first-child { color: #7fb468; }.intro-grid { display: grid; grid-template-columns: 1.05fr .75fr; gap: 70px; align-items: end; margin-top: 24px; }.intro h2,.numbers h2 { margin: 0; font-size: clamp(43px, 5.5vw, 67px); line-height: 1.07; font-weight: 500; }.intro h2 em,.numbers h2 em,.cta-inner h2 em { color: #78aa63; font-style: normal; }.intro-grid > div { padding-bottom: 4px; }.intro-grid p { max-width: 420px; margin-bottom: 18px; color: var(--muted); font-size: 13px; line-height: 1.8; }.arrow-link { font-size: 11px; font-weight: 700; }.arrow-link span { margin-left: 8px; color: #78aa63; }
.feature-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; padding-bottom: 135px; }.feature-card { position: relative; min-height: 415px; padding: 18px 19px; overflow: hidden; border: 1px solid #e5e9e1; border-radius: 6px; background: #fbfcf9; }.feature-top { display: flex; justify-content: space-between; align-items: center; color: #8a958b; font-size: 8px; font-weight: 700; letter-spacing: 1px; }.feature-icon { display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid #e5e9e1; border-radius: 5px; color: #618e54; font-size: 14px; }.feature-card h3 { margin: 0 0 8px; font: 600 19px var(--display); letter-spacing: -.7px; }.feature-card p { max-width: 310px; margin: 0; color: #758078; font-size: 11px; line-height: 1.7; }.feature-card > a { position: absolute; right: 18px; bottom: 18px; color: #6c9f54; font-size: 17px; }.data-visual,.workflow-visual,.team-visual { position: relative; height: 222px; margin: 5px -2px 13px; overflow: hidden; }.feature-data { background: radial-gradient(ellipse at 51% 47%, #f0f5ec 0, #fbfcf9 68%); }.data-ring { position: absolute; top: 50%; left: 50%; border: 1px solid #b9d8ac; border-radius: 50%; transform: translate(-50%,-50%); }.ring-a { width: 155px; height: 155px; }.ring-b { width: 112px; height: 112px; border-style: dashed; animation: orbit 24s linear infinite; }.data-core { position: absolute; top: 50%; left: 50%; display: grid; place-items: center; width: 58px; height: 58px; border-radius: 50%; background: #e6f3df; color: #74a75b; font-size: 24px; transform: translate(-50%,-50%); box-shadow: 0 0 0 9px #f0f6ec; }.data-tag { position: absolute; display: flex; flex-direction: column; gap: 3px; padding: 7px 9px; border: 1px solid #e6ebe3; border-radius: 4px; background: #fff; color: #9ba49c; font-size: 6px; letter-spacing: .5px; box-shadow: 0 4px 12px #263b2410; }.data-tag b { color: #4d6550; font-size: 8px; letter-spacing: 0; }.tag-one { top: 18px; left: 24px; }.tag-two { top: 47px; right: 8px; }.tag-three { bottom: 20px; left: 21px; }.tag-three b { color: #7b9670; letter-spacing: 1px; }.workflow-visual { padding-top: 45px; background: radial-gradient(ellipse at center, #f0f3fb 0, #fbfcf9 73%); }.flow-node { position: absolute; top: 75px; display: flex; flex-direction: column; align-items: center; gap: 5px; width: 90px; padding: 10px 4px; border: 1px solid #e6e9f1; border-radius: 6px; background: white; box-shadow: 0 5px 14px #27334b0a; }.flow-node > span { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 6px; background: #eef1fb; color: #7883c4; font-size: 12px; }.flow-node b { font-size: 7px; }.flow-node small { color: #9ca3aa; font-size: 6px; }.flow-node i { position: absolute; top: -5px; right: -5px; display: grid; place-items: center; width: 13px; height: 13px; border-radius: 50%; background: #78b85d; color: white; font-size: 8px; font-style: normal; }.node-start { left: 2px; }.node-process { left: 50%; border-color: #bed9af; transform: translateX(-50%); }.node-process > span { background: #eff6e9; color: #74a654; }.node-end { right: 2px; }.node-end > span { background: #fff2e8; color: #cf9362; }.flow-connector { position: absolute; top: 101px; width: 32px; height: 1px; border-top: 1px dashed #a9c49c; }.connector-one { left: 91px; }.connector-two { right: 91px; }.flow-label { position: absolute; bottom: 30px; left: 50%; width: 87%; padding: 8px 10px; border: 1px solid #eaede8; border-radius: 4px; background: #fff; color: #637067; font-size: 7px; transform: translateX(-50%); }.flow-label span { float: right; color: #9aa39a; }.team-visual { background: radial-gradient(ellipse at center, #f3f0fa 0, #fbfcf9 72%); }.team-orbit { position: absolute; top: 50%; left: 50%; border: 1px dashed #d5ccec; border-radius: 50%; transform: translate(-50%,-50%); }.team-orbit.orbit-a { width: 160px; height: 118px; }.team-orbit.orbit-b { width: 116px; height: 164px; }.team-center { position: absolute; top: 50%; left: 50%; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: white; box-shadow: 0 4px 15px #342a521c; font: 800 16px var(--display); transform: translate(-50%,-50%); }.team-person { position: absolute; display: grid; place-items: center; width: 30px; height: 30px; border: 3px solid #fbfcf9; border-radius: 50%; color: white; font-size: 7px; font-weight: 700; box-shadow: 0 3px 9px #3332; }.person-a { top: 34px; left: 48%; background: #df9b77; }.person-b { right: 47px; top: 94px; background: #778fc4; }.person-c { bottom: 35px; left: 46%; background: #a77fb4; }.person-d { left: 43px; top: 100px; background: #83a66c; }.team-bubble { position: absolute; padding: 7px 9px; border: 1px solid #e9e7ed; border-radius: 5px; background: white; color: #68706a; font-size: 7px; box-shadow: 0 4px 10px #342a520d; }.bubble-a { top: 24px; right: 20px; }.bubble-b { bottom: 19px; left: 20px; }

.statement { display: grid; grid-template-columns: 1fr .8fr; min-height: 490px; margin-bottom: 126px; overflow: hidden; border-radius: 8px; background: #e9efe5; }.statement-art { position: relative; display: grid; place-items: center; min-height: 490px; overflow: hidden; background: #203e31; }.statement-art::before,.statement-art::after { position: absolute; width: 370px; height: 370px; border: 1px solid #ffffff26; border-radius: 50%; content: ""; }.statement-art::after { width: 270px; height: 270px; border-style: dashed; }.statement-art > span { z-index: 1; display: grid; place-items: center; width: 132px; height: 132px; border: 1px solid #ffffff55; border-radius: 50%; color: #f5f7ef; font: 800 51px var(--display); letter-spacing: -5px; box-shadow: 0 0 0 29px #ffffff09, 0 0 0 60px #ffffff06; }.statement-art > span span { color: #b5e589; }.statement-orb { position: absolute; width: 10px; height: 10px; border-radius: 50%; background: #b5e589; box-shadow: 0 0 25px #b5e58999; }.orb-one { top: 25%; left: 31%; }.orb-two { right: 22%; bottom: 29%; width: 7px; height: 7px; background: #c6a9ef; }.statement-copy { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: 55px clamp(35px, 6vw, 86px); }.statement-copy h2 { margin: 27px 0 17px; font-size: clamp(37px, 4vw, 51px); line-height: 1.08; font-weight: 500; letter-spacing: -2.7px; }.statement-copy p { max-width: 360px; margin-bottom: 24px; color: #657068; font-size: 12px; line-height: 1.85; }.statement-copy .button { min-height: 45px; font-size: 11px; }
.numbers { display: grid; grid-template-columns: 1fr .9fr; gap: 90px; padding-bottom: 138px; }.numbers-heading h2 { margin-top: 22px; }.metric-list { align-self: end; }.metric { display: grid; grid-template-columns: 1fr 1fr 24px; align-items: center; gap: 10px; padding: 17px 0; border-bottom: 1px solid var(--line); }.metric:first-child { border-top: 1px solid var(--line); }.metric > b { font: 500 39px var(--display); letter-spacing: -2px; }.metric > b span { color: #78aa63; font-size: 24px; }.metric > span { color: #738077; font-size: 10px; line-height: 1.5; }.metric > i { color: #7eaa6b; font-size: 14px; font-style: normal; text-align: right; }
.cta-section { position: relative; overflow: hidden; border-radius: 8px; background: #233e32; color: white; }.cta-inner { position: relative; min-height: 390px; padding: 61px 10%; }.cta-inner .section-kicker { color: #bdcdbd; }.cta-inner .section-kicker > span:first-child { color: #b3e384; }.cta-inner h2 { position: relative; z-index: 1; margin: 23px 0 10px; font-size: clamp(47px, 6vw, 68px); line-height: 1.02; font-weight: 500; }.cta-inner h2 em { color: #b4e487; }.cta-inner p { position: relative; z-index: 1; margin-bottom: 21px; color: #ccd5ce; font-size: 12px; }.button-light { position: relative; z-index: 1; min-height: 45px; color: #20372d; background: #c1ed9b; font-size: 11px; }.button-light:hover { background: #d0f4b0; }.cta-footnote { position: absolute; right: 10%; bottom: 23px; color: #b3c0b5; font-size: 8px; letter-spacing: .5px; }.cta-decoration { position: absolute; top: -119px; right: 8%; color: #ffffff09; font-size: 455px; line-height: 1; }
.site-footer { display: flex; align-items: center; min-height: 126px; gap: 25px; }.site-footer .brand { font-size: 21px; }.site-footer .brand-mark { transform: scale(.85) skew(-23deg); }.site-footer > p { margin: 0; color: #838d85; font-size: 10px; }.footer-links { display: flex; gap: 23px; margin-left: auto; color: #68736a; font-size: 10px; }.footer-links a:hover { color: #589546; }.copyright { color: #9aa29b; font-size: 9px; }
.reveal { opacity: 0; transform: translateY(20px); transition: opacity .65s ease, transform .65s ease; }.reveal.is-visible { opacity: 1; transform: none; }
@keyframes orbit { to { transform: translate(-50%,-50%) rotate(360deg); } }

@media (max-width: 1000px) { .section-wrap,.site-header { width: min(100% - 56px, 900px); }.site-header { height: 76px; }.navigation { gap: 20px; }.header-actions { gap: 16px; }.hero { grid-template-columns: .82fr 1.18fr; gap: 14px; min-height: 600px; }.hero-copy { padding-left: 0; }.hero-visual { transform: scale(.94); }.intro-grid { gap: 35px; }.statement-copy { padding-inline: 38px; }.numbers { gap: 42px; }.wordmarks { gap: 11px; }.wordmark:nth-last-child(-n+2) { display: none; } }
@media (max-width: 720px) { .section-wrap,.site-header { width: calc(100% - 40px); }.site-header { height: 68px; }.brand { font-size: 23px; }.menu-toggle { display: flex; flex-direction: column; gap: 5px; margin-left: auto; padding: 10px; border: 0; background: transparent; }.menu-toggle span { width: 20px; height: 2px; background: var(--ink); transition: transform .2s; }.menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(3.5px) rotate(45deg); }.menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }.navigation { position: absolute; top: 67px; right: -20px; left: -20px; display: none; flex-direction: column; gap: 0; padding: 9px 20px 16px; border-bottom: 1px solid var(--line); background: var(--paper); box-shadow: 0 14px 18px #20392b0d; }.navigation.is-open { display: flex; }.navigation a { padding: 13px 0; border-bottom: 1px solid #e9ece6; }.navigation a:last-child { border: 0; }.header-actions { display: none; }.hero { grid-template-columns: 1fr; gap: 4px; padding-top: 59px; padding-bottom: 45px; }.hero-copy { padding: 0; }.eyebrow { margin-bottom: 19px; font-size: 8px; }.hero h1 { font-size: clamp(55px, 13vw, 76px); }.hero-description { max-width: 470px; font-size: 14px; }.hero-proof { margin-top: 29px; }.hero-visual { min-height: 405px; margin: 1px -14px 0; transform: none; }.dashboard-card { width: 100%; max-width: 510px; }.dashboard-body { min-height: 338px; }.dash-content { padding: 14px 12px; }.orbit-one { width: min(96vw, 450px); height: min(96vw, 450px); }.orbit-two { width: min(76vw, 360px); height: min(76vw, 360px); }.note-top { top: 6px; right: 0; }.note-bottom { bottom: 7px; left: 0; }.trust-strip { align-items: flex-start; flex-direction: column; gap: 17px; padding: 23px 0; }.trust-strip:not(.confidence-strip) > p br { display: none; }.wordmarks { width: 100%; flex-wrap: wrap; justify-content: flex-start; column-gap: 27px; row-gap: 15px; }.wordmark:nth-last-child(-n+2) { display: inline; }.intro { padding-top: 92px; padding-bottom: 35px; }.intro-grid { grid-template-columns: 1fr; gap: 22px; margin-top: 18px; }.intro h2,.numbers h2 { font-size: clamp(42px, 10vw, 58px); letter-spacing: -2.7px; }.intro-grid p { font-size: 12px; }.feature-grid { grid-template-columns: 1fr; gap: 12px; padding-bottom: 88px; }.feature-card { min-height: 395px; padding: 17px 18px; }.data-visual,.workflow-visual,.team-visual { height: 205px; }.statement { grid-template-columns: 1fr; margin-bottom: 90px; }.statement-art { min-height: 300px; }.statement-art::before { width: 290px; height: 290px; }.statement-art::after { width: 210px; height: 210px; }.statement-copy { padding: 37px 27px 42px; }.statement-copy h2 { font-size: 43px; }.numbers { grid-template-columns: 1fr; gap: 32px; padding-bottom: 90px; }.metric { grid-template-columns: 1fr 1fr 20px; }.metric > b { font-size: 34px; }.cta-inner { min-height: 360px; padding: 49px 26px 55px; }.cta-inner h2 { font-size: clamp(47px, 12vw, 62px); letter-spacing: -2.8px; }.cta-decoration { top: 24px; right: -63px; font-size: 280px; }.cta-footnote { right: 25px; bottom: 19px; font-size: 7px; }.site-footer { display: grid; grid-template-columns: 1fr auto; gap: 9px 14px; padding-top: 25px; padding-bottom: 25px; }.site-footer > p { grid-column: 1; }.footer-links { grid-column: 1 / -1; grid-row: 3; gap: 18px; margin: 9px 0 0; }.copyright { grid-column: 2; grid-row: 1; align-self: center; } }
@media (max-width: 420px) { .section-wrap,.site-header { width: calc(100% - 32px); }.hero { padding-top: 47px; }.hero-actions { gap: 15px; }.hero-actions .button { gap: 12px; padding-inline: 14px; }.text-link { font-size: 10px; }.hero-visual { min-height: 355px; margin-inline: -8px; }.dashboard-body { min-height: 305px; }.dash-sidebar { flex-basis: 34px; }.dash-stats { gap: 5px; }.dash-stats > div { padding: 7px 5px; }.dash-stats b { font-size: 16px; }.run-row { gap: 5px; }.run-state { font-size: 5px; }.run-time { width: 30px; }.floating-note { transform: scale(.9); }.note-top { transform-origin: top right; }.note-bottom { transform-origin: bottom left; }.wordmarks { column-gap: 21px; }.metric > span { font-size: 9px; } }
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }

/* Match Seqera's typo-h1 treatment: Degular regular, compact tracking and scale. */
h1 {
  font-family: var(--display);
  font-size: 1.875rem;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -.025em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
h1 span { color: var(--ink); }
@media (min-width: 768px) { h1 { font-size: 2.375rem; } }
@media (min-width: 1024px) { h1 { font-size: 3rem; } }

/* More generous reading sizes for the page's supporting copy. */
.hero-description { font-size: 18px; line-height: 1.7; }
.intro-grid p,
.statement-copy p,
.cta-inner p { font-size: 16px; line-height: 1.7; }
.feature-card p { font-size: 14px; line-height: 1.7; }
.hero-proof p { font-size: 12px; }
.metric > span { font-size: 12px; }
.button > span { display: none; }

@media (max-width: 720px) {
  .hero-description { font-size: 16px; }
  .intro-grid p,
  .statement-copy p,
  .cta-inner p { font-size: 15px; }
}

/* Lavender accent palette */
:root { --green: #beb1ff; --purple: #beb1ff; }
.brand-period,
.side-logo span,
.team-center span { color: #beb1ff; }
.brand-mark i { background: #beb1ff; }
.eyebrow-dot { background: #beb1ff; box-shadow: 0 0 0 4px #f0edff; }
.navigation a:hover,
.login-link:hover { color: #8775d4; }
.button-dark:hover { background: #39344f; }
.side-icon.active { background: #f0edff; color: #8775d4; }
.dash-stats .positive { color: #8775d4; }
.state-dot.done { background: #8775d4; box-shadow: 0 0 0 3px #f0edff; }
.chart-line { stroke: #beb1ff; }
#chart-fill stop:first-child { stop-color: #beb1ff; }
.bio span,
.arc span,
.nova span { color: #8775d4; }
.intro h2 em,
.numbers h2 em,
.arrow-link span { color: #8775d4; }
.feature-icon,
.feature-card > a { color: #8775d4; }
.feature-data { background: radial-gradient(ellipse at 51% 47%, #f3f0ff 0, #fff 68%); }
.data-ring { border-color: #cfc5ff; }
.data-core { background: #f0edff; color: #8775d4; box-shadow: 0 0 0 9px #f7f5ff; }
.tag-three b { color: #8775d4; }
.workflow-visual { background: radial-gradient(ellipse at center, #f3f0ff 0, #fff 73%); }
.node-process { border-color: #cfc5ff; }
.node-process > span { background: #f0edff; color: #8775d4; }
.team-visual { background: radial-gradient(ellipse at center, #f3f0ff 0, #fff 72%); }
.team-orbit { border-color: #d5ccec; }
.statement { background: #f0edff; }
.statement-art { background: #302c48; }
.statement-art > span span,
.orb-one { color: #beb1ff; background-color: #beb1ff; }
.statement-art > span span { background: transparent; }
.orb-two { background: #d4caff; }
.cta-section { background: #302c48; }
.cta-inner .section-kicker > span:first-child,
.cta-inner h2 em { color: #beb1ff; }
.button-light { color: #29243f; background: #beb1ff; }
.button-light:hover { background: #cec4ff; }
.symbol-green,
.compute-icon { color: #8775d4; background: #f0edff; }
.sparkline { color: #8775d4; }
.new-run { background: #302c48; }
.flow-node i { background: #8775d4; }

.success-stories { padding-bottom: 128px; }
.stories-heading { display: flex; justify-content: space-between; align-items: end; gap: 42px; margin-bottom: 31px; }
.stories-heading h2 { margin: 22px 0 0; font: 500 clamp(43px, 5.2vw, 62px)/1.06 var(--display); letter-spacing: -2.8px; }
.stories-heading h2 em { color: #8775d4; font-style: normal; }
.stories-heading > p { max-width: 340px; margin: 0 0 5px; color: var(--muted); font-size: 15px; line-height: 1.7; }
.story-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; }
.story-card { overflow: hidden; border: 1px solid #e7e5ee; border-radius: 7px; background: #fff; transition: transform .2s, box-shadow .2s; }
.story-card:hover { transform: translateY(-4px); box-shadow: 0 14px 30px #302c4810; }
.story-art { position: relative; display: grid; place-items: center; height: 186px; overflow: hidden; background: #f3f0ff; }
.story-art::before,.story-art::after { position: absolute; width: 190px; height: 190px; border: 1px solid #beb1ff66; border-radius: 50%; content: ""; }
.story-art::after { width: 140px; height: 140px; border-style: dashed; }
.story-art-genomics { background: radial-gradient(ellipse at 50% 45%, #fff 0, #f0edff 75%); }
.story-orbit { position: absolute; width: 105px; height: 105px; border: 1px dashed #a99ae8; border-radius: 50%; animation: orbit 28s linear infinite; }
.story-art-core { z-index: 1; display: grid; place-items: center; width: 54px; height: 54px; border-radius: 50%; background: #fff; color: #4a435d; font: 700 21px var(--display); box-shadow: 0 5px 20px #302c4818; }
.story-art-core span { color: #8775d4; }
.story-particle { position: absolute; z-index: 1; width: 8px; height: 8px; border-radius: 50%; background: #8775d4; box-shadow: 0 0 0 5px #beb1ff2b; }
.particle-one { top: 37px; left: calc(50% - 70px); }.particle-two { right: calc(50% - 75px); bottom: 35px; width: 6px; height: 6px; background: #d9a97a; }
.story-art-label { position: absolute; z-index: 2; bottom: 13px; left: 15px; color: #8f88a4; font-size: 7px; font-weight: 700; letter-spacing: 1px; }
.story-art-source { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 9px; padding: 20px 16px 34px; }
.story-art-source::before,.story-art-source::after { display: none; }
.story-client-image { display: block; max-width: 76%; max-height: 76px; width: auto; height: auto; object-fit: contain; }
.story-client-screenshot { max-width: 92%; max-height: 102px; border: 1px solid #e8e6ef; border-radius: 4px; background: #fff; }
.story-art-top-pharma { padding: 0; }
.story-art-top-pharma .story-client-photo { position: absolute; inset: 0; width: 100%; max-width: none; height: 100%; max-height: none; object-fit: cover; filter: saturate(.88) contrast(.96); opacity: 1; }
.story-art-top-pharma .story-art-label { padding: 5px 8px; border-radius: 3px; background: #fffffff0; color: #000080; }
.story-art-product { position: relative; display: block; padding: 0; }
.story-art-product::before,.story-art-product::after { display: none; }
.story-product-image { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; filter: saturate(.88) contrast(.96); opacity: 1; }
.story-client-badge { position: absolute; z-index: 3; top: 11px; right: 11px; display: block; max-width: 118px; max-height: 38px; padding: 6px 9px; border-radius: 4px; background: #fffffff2; object-fit: contain; box-shadow: 0 3px 12px #19242118; }
.story-art-product .story-art-label { padding: 5px 8px; border-radius: 3px; background: #fffffff0; color: #000080; }
.story-art-arcwell { background: linear-gradient(145deg, #f0edff, #f8f7fc 65%, #ece7ff); }
.story-bars { display: flex; align-items: end; gap: 8px; height: 90px; padding: 0 16px; border-bottom: 1px solid #beb1ff77; }
.story-bars i { width: 12px; height: 29%; border-radius: 3px 3px 0 0; background: #d3caff; }
.story-bars i:nth-child(3n + 1) { height: 52%; }.story-bars i:nth-child(3n + 2) { height: 72%; }.story-bars i:nth-child(4n) { height: 94%; background: #a99ae8; }
.story-chart-dot { position: absolute; top: 53px; right: calc(50% - 59px); width: 9px; height: 9px; border: 2px solid #fff; border-radius: 50%; background: #8775d4; box-shadow: 0 0 0 4px #beb1ff55; }
.story-art-novacell { background: radial-gradient(ellipse at center, #faf9ff, #efecff); }
.story-flow { z-index: 1; display: flex; align-items: center; gap: 7px; }
.story-flow span { padding: 9px 10px; border: 1px solid #d9d2f4; border-radius: 4px; background: #fff; color: #605a72; font-size: 7px; font-weight: 700; letter-spacing: .4px; box-shadow: 0 4px 14px #302c480b; }
.story-flow i { color: #8775d4; font-size: 14px; font-style: normal; }
.story-flow-glow { position: absolute; top: 50%; left: 50%; width: 175px; height: 50px; border-radius: 50%; background: #beb1ff35; filter: blur(20px); transform: translate(-50%,-50%); }
.story-card-content { padding: 19px 19px 17px; }
.story-customer { display: flex; justify-content: space-between; align-items: center; color: #827c94; font-size: 8px; font-weight: 700; letter-spacing: .9px; }
.story-customer span { color: #8775d4; font-size: 13px; }
.story-card h3 { min-height: 48px; margin: 13px 0 7px; font: 600 19px/1.25 var(--display); letter-spacing: -.3px; }
.story-card-content > p { min-height: 60px; margin: 0; color: #73717d; font-size: 13px; line-height: 1.6; }
.story-result { display: flex; align-items: center; gap: 13px; margin: 17px 0 14px; padding: 13px 0; border-top: 1px solid #eeecf3; border-bottom: 1px solid #eeecf3; }
.story-result b { color: #7561c1; font: 500 33px/1 var(--display); letter-spacing: -1.5px; }
.story-result span { color: #7b7884; font-size: 10px; line-height: 1.4; }
.story-link { color: #574b83; font-size: 11px; font-weight: 700; }.story-link span { margin-left: 6px; color: #8775d4; }
@media (max-width: 900px) { .story-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 720px) { .success-stories { padding-bottom: 90px; }.stories-heading { align-items: flex-start; flex-direction: column; gap: 17px; margin-bottom: 24px; }.stories-heading > p { max-width: 480px; font-size: 15px; }.story-grid { grid-template-columns: 1fr; }.story-card:last-child { display: block; }.story-art { height: 190px; }.story-card h3,.story-card-content > p { min-height: 0; }.story-card-content > p { font-size: 14px; } }
.trust-strip { border-top: 0; }

@media (min-width: 721px) {
  body.narrativa-page:has(.trust-strip) .hero {
    min-height: 530px;
    padding-top: 18px;
    padding-bottom: 25px;
  }
  body.narrativa-page:has(.trust-strip) .hero-visual { min-height: 400px; }
  body.narrativa-page:has(.trust-strip) .page-hero-visual { min-height: 400px; }
}
