/* SingularCell — blue identity, clear hierarchy, restrained glass surfaces. */
:root { color-scheme:light; --ink:#10243a; --ink-2:#18354f; --paper:#fff; --mist:#f2f6fa; --white:#fff; --muted:#536679; --line:#dbe4ee; --line-soft:#edf2f7; --blue:#125edc; --forest:#125edc; --green:#087d69; --violet:#5457e5; --coral:#125edc; --amber:#986515; --danger:#b84040; --display:"Manrope","Avenir Next",sans-serif; --body:"Source Sans 3","Segoe UI",sans-serif; --mono:"SFMono-Regular",Consolas,monospace; --max:1240px; }
html { background:#fff; scroll-padding-top:100px; }
body { background:#fff; color:var(--ink); font:400 18px/1.6 var(--body); letter-spacing:0; text-rendering:optimizeLegibility; }
h1,h2,h3,h4 { font-family:var(--display); font-weight:600; letter-spacing:-.045em; text-wrap:balance; }
h2 { font-size:clamp(36px,4.3vw,60px); line-height:1.12; }
.eyebrow { font:600 14px/1.5 var(--body); letter-spacing:.035em; text-transform:none; color:var(--muted); }.eyebrow span { color:var(--blue); }
.button,.nav-action { min-height:52px; padding:12px 24px; font:600 17px/1.3 var(--body); border-radius:10px; gap:20px; }
.button-primary,.nav-action { background:var(--blue); color:#fff; border-color:transparent; box-shadow:none; }.button-primary:hover,.nav-action:hover { background:#084cb9; box-shadow:0 8px 22px #125edc20; }
.button-quiet { color:var(--ink); background:transparent; border-color:#bdcbd8; }.button-quiet:hover { background:#edf4fc; }.button-secondary { background:#edf4fc; color:var(--blue); border-color:#cbdced; }
:focus-visible { outline:3px solid #aa83e3; outline-offset:4px; }
.site-header { height:88px; padding-inline:max(24px,calc((100vw - 1320px)/2)); grid-template-columns:auto 1fr auto; gap:34px; background:#ffffffed; border-color:var(--line-soft); }
.site-header .brand { display:block; width:196px; min-width:196px; height:46px; background:url('/brand/logos/singularcell-horizontal-v1.5.png') left center/contain no-repeat; font-size:0; color:transparent; }
.site-header .brand>* { display:none; }
.site-header nav { justify-content:center; gap:24px; font:600 16px var(--body); color:var(--muted); }.site-header nav a { display:inline-flex; align-items:center; min-height:44px; }
.nav-action { white-space:nowrap; }.nav-action span { color:inherit; }
.mobile-nav { display:none; }
.panel-heading h3:focus { outline:none; }
.sensitivity-row>small { font:400 14px/1.5 var(--body); color:var(--muted); }.sensitivity-chip b { font:600 14px var(--body); }
/* Illustrative imagery, not a live scientific measurement. */
.hero { max-width:none; min-height:min(760px,100svh); padding:88px max(32px,calc((100vw - 1240px)/2)) 48px; display:flex; align-items:center; background:#071a2b; overflow:hidden; color:white; }.hero::before { display:none; }
.hero-copy { width:min(58%,760px); max-width:760px; margin:0; position:relative; z-index:4; }.hero .eyebrow { font-size:17px; font-weight:600; letter-spacing:.015em; }.hero .eyebrow span { color:#b9d8ff; }
.hero h1 { max-width:760px; color:#fff; font-size:clamp(48px,5.6vw,78px); line-height:1.04; letter-spacing:-.052em; margin:24px 0 26px; text-wrap:balance; }.hero h1 em { display:inline; color:#d7c3ff; font-style:normal; }
.hero-lede { max-width:610px; color:#d6e2ee; font:400 20px/1.55 var(--body); margin-bottom:30px; }.hero-actions { gap:14px; margin:28px 0; }
.hero .button-primary { background:#125edc; color:#fff; border-color:transparent; }.hero .button-primary:hover { background:#084cb9; }.hero .button-quiet { color:#fff; border-color:#566f87; background:#102b43; }.hero .button-quiet:hover { background:#183d5c; }
.hero-proof { gap:10px 24px; margin:34px 0 12px; padding-top:21px; border-top:1px solid #ffffff30; max-width:700px; }.hero-proof span { color:#dce9f5; font:400 15px var(--body); }.hero-footnote { color:#9eb6ca; font:400 14px/1.5 var(--body); letter-spacing:0; text-transform:none; }
.cell-field { position:absolute; inset:0; width:100%; height:100%; z-index:1; isolation:isolate; mask-image:none; border:0; border-radius:0; background:#071a2b; }.cell-field picture,.micrograph-video { position:absolute; inset:0 0 0 38%; width:62%; height:100%; }
/* Decorative colour treatment only; the source microscopy file is unchanged. */
.micrograph,.micrograph-video { width:100%; height:100%; object-fit:cover; object-position:center; opacity:.88; filter:grayscale(1) contrast(1.08); }.micrograph { animation:none; }.micrograph-video { z-index:1; }
.cell-field::before { content:""; position:absolute; inset:0; z-index:2; pointer-events:none; background:linear-gradient(120deg,#194ba8 16%,#6042bd 54%,#1fa6d5 88%); opacity:.78; mix-blend-mode:color; }
.cell-field::after { content:""; position:absolute; inset:0; z-index:3; pointer-events:none; background:linear-gradient(90deg,#071a2b 0%,#071a2b 31%,#071a2bf5 42%,#071a2bbd 57%,#071a2b24 82%),linear-gradient(0deg,#071a2bd9,transparent 48%); }
.scan-line { display:block; position:absolute; left:58%; right:2%; top:14%; height:1px; z-index:4; background:linear-gradient(90deg,transparent,#70d6ec80,#d2b7ffb8,transparent); box-shadow:0 0 18px 2px #70d6ec20; animation:scan-sweep 11s ease-in-out infinite alternate; pointer-events:none; }
@keyframes scan-sweep { from { top:12%; opacity:.3; } to { top:85%; opacity:.8; } }
.motion-paused .micrograph,.motion-paused .scan-line,.motion-paused .handoff-connector i { animation-play-state:paused; }
.handoff-map { margin:0; padding:32px; background:#071c30; color:white; border-radius:14px; overflow:hidden; }
.handoff-map figcaption { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; font:600 16px var(--body); padding-bottom:30px; }.handoff-map figcaption span { color:#a8c1d6; font:400 13px var(--body); }
.handoff-party { display:flex; gap:18px; align-items:center; padding:20px 0; }.party-icon { display:grid; place-items:center; width:46px; height:46px; flex-shrink:0; border:1px solid #92bdd340; border-radius:50%; color:#61e2b5; font-size:26px; }
.handoff-party small { font:400 14px var(--body); color:#a8c1d6; }.handoff-party strong { display:block; font:600 21px/1.3 var(--display); margin:8px 0; }.handoff-party p,.handoff-hub p { margin:0; color:#afc5d7; font:400 16px/1.5 var(--body); }
.handoff-connector { position:relative; width:1px; height:42px; margin-left:23px; background:#426576; }.handoff-connector i { position:absolute; width:5px; height:12px; left:-2px; border-radius:4px; background:#61e2b5; animation:handoff-travel 2.8s ease-in-out infinite; }
@keyframes handoff-travel { 0% { transform:translateY(0); opacity:0; } 20%,70% { opacity:1; } 100% { transform:translateY(30px); opacity:0; } }
.handoff-hub { display:flex; align-items:center; gap:18px; padding:22px 18px; border:1px solid #aa8bca70; border-radius:10px; background:#17344c; }.handoff-hub img { flex-shrink:0; }.handoff-hub strong { font:600 26px var(--display); }.handoff-hub p { margin-top:4px; }
.handoff-review { margin-top:26px; padding-top:22px; border-top:1px solid #ffffff25; color:#b7cbdc; font-size:15px; }
@keyframes cell-drift { from { transform:scale(1.02); } to { transform:scale(1.09) translate3d(-1%,0,0); } }
.journey-section { padding:104px max(24px,calc((100vw - 1240px)/2)); display:grid; grid-template-columns:.72fr 1.28fr; gap:64px; background:#f2f6fa; align-items:center; }.journey-intro p:last-child { max-width:32ch; color:var(--muted); font-size:20px; }
.contract-preview { min-width:0; min-height:0; margin:0; width:100%; border:1px solid var(--line); border-radius:22px; background:#fff; box-shadow:0 24px 64px #1434510d; backdrop-filter:none; }.contract-preview::before { display:none; }
.contract-preview header,.contract-preview footer { min-height:62px; padding:18px 24px; font:400 14px/1.5 var(--body); letter-spacing:0; text-transform:none; color:var(--muted); border-color:var(--line-soft); background:transparent; }.contract-preview header code { font-size:12px; }
.preview-question { padding:28px 24px; }.preview-question span { color:var(--muted); font:600 14px var(--body); letter-spacing:0; text-transform:none; }.preview-question strong { color:var(--ink); font:600 26px/1.3 var(--display); }.preview-question small { color:var(--muted); font-size:16px; line-height:1.55; min-height:4.7em; }
.preview-flow { padding:0 20px 24px; gap:7px; }.preview-flow::before { display:none; }.preview-node { min-width:0; min-height:110px; padding:14px 10px; border:1px solid var(--line-soft); border-radius:10px!important; background:#f5f8fb; text-align:left; cursor:pointer; }
.preview-node small { margin-bottom:16px; color:#776588; font:400 12px var(--body); }.preview-node span { color:var(--ink); font:600 15px var(--body); }.preview-node b { position:static; display:block; padding:0; margin-top:4px; font:400 12px/1.3 var(--body); text-transform:none; letter-spacing:0; color:var(--muted); background:none; }
.preview-node.active { border-color:#c9afea; background:#f0e7fd; }.preview-node.active span,.preview-node.active b { color:#084cb9; }.preview-node:hover { border-color:var(--blue); }.contract-preview footer { flex-wrap:wrap; font-size:13px; }.contract-preview footer strong { color:var(--green); }
.product-thesis { padding:110px max(24px,calc((100vw - 1240px)/2)); background:#fff; color:var(--ink); gap:32px 90px; }.product-thesis .eyebrow span { color:var(--blue); }.product-thesis>p { color:var(--muted); font-size:21px; }
.architecture-flow { grid-column:1/-1; grid-template-columns:1fr; margin:24px 0 0; border-top:1px solid var(--line); counter-reset:steps; }.architecture-flow li { min-height:106px; display:grid; grid-template-columns:44px .65fr 1fr; align-items:center; gap:22px; border:0!important; border-bottom:1px solid var(--line)!important; padding:24px 0; counter-increment:steps; }
.architecture-flow li::before { content:"0" counter(steps); font:400 15px var(--body); color:#776588; }.architecture-flow span { color:#125edc; font:600 25px var(--display); text-transform:none; letter-spacing:-.03em; }.architecture-flow strong { max-width:none; font:400 21px/1.4 var(--body); color:var(--muted); }
.teams-section { display:grid; grid-template-columns:1fr 1fr; gap:88px; align-items:center; margin:0 auto; padding:24px max(24px,calc((100vw - 1240px)/2)) 112px; }.teams-image { min-height:580px; height:100%; position:relative; border-radius:22px; overflow:hidden; background:#071c30; }.teams-image img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.8; }.teams-image::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,#071c30e6,transparent 70%); }.teams-image>span { position:absolute; left:32px; bottom:32px; right:32px; z-index:1; color:#fff; font:600 32px/1.2 var(--display); }
.teams-copy article { padding:26px 0; border-top:1px solid var(--line); }.teams-copy h3 { font-size:24px; margin-bottom:12px; }.teams-copy article p { color:var(--muted); font-size:19px; margin-bottom:16px; }.teams-copy a { display:inline-flex; align-items:center; gap:18px; min-height:44px; color:var(--blue); font-weight:600; }
.compiler-section { padding:100px max(24px,calc((100vw - 1240px)/2)); background:#f3f7fc; color:var(--ink); }.compiler-intro { align-items:flex-start; gap:40px; }.compiler-intro>div:first-child { max-width:820px; }.compiler-intro h2 { max-width:780px; }.section-lede { font-size:21px; color:var(--muted); max-width:65ch; margin:24px 0 12px; }.demo-disclosure { color:#596d81; font-size:14px; }
.runtime-status { margin-top:8px; color:#47627b; font:400 13px/1.4 var(--body); letter-spacing:0; text-transform:none; flex-shrink:0; }.compiler-shell { min-height:0; grid-template-columns:218px minmax(0,1fr); border-radius:20px; box-shadow:0 20px 60px #13304a0a; }.stage-rail { background:#f7f9fc; padding:24px 12px; }.rail-label { font:600 13px var(--body); letter-spacing:0; text-transform:none; color:var(--muted); }
.stage-button { min-height:96px; padding-left:48px; color:var(--muted); }.stage-button span { width:25px; height:25px; top:20px; left:12px; font:400 11px var(--body); background:#eef3f9; }.stage-button strong { font-size:17px; color:var(--ink); }.stage-button small { font:400 14px/1.4 var(--body); }.stage-button.is-active { box-shadow:0 5px 16px #10243a0a; color:var(--blue); }
.stage-panel { min-height:780px; padding:32px; }.panel-heading { flex-wrap:wrap; gap:18px; padding-bottom:24px; }.panel-heading p { font:600 14px var(--body); letter-spacing:0; text-transform:none; }.panel-heading h3 { font-size:clamp(28px,2.7vw,38px); line-height:1.2; }.status-chip { font:600 12px var(--body); letter-spacing:0; text-transform:none; padding:6px 12px; }
.field { font:600 16px/1.5 var(--body); color:#314b62; }.field small { color:var(--muted); font:400 14px/1.5 var(--body); }input,textarea,select { font:400 17px/1.5 var(--body); background:#fff; color:var(--ink); border-color:#a4b4c4; border-radius:9px; }input:focus,textarea:focus,select:focus { outline-color:#d5c1ef; border-color:var(--blue); }
.evidence-details { background:#f7f9fc; }.evidence-details summary { font-size:16px; color:#314b62; }.metadata-grid span,.hash-card span,.statistic span { font:600 13px/1.4 var(--body); text-transform:none; color:var(--muted); }.metadata-grid strong { font-size:14px; color:var(--ink); }.metadata-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.panel-actions { flex-wrap:wrap; }
.contract-columns h4,.replicate-grid label,.result-toolbar label { font:600 15px/1.4 var(--body); letter-spacing:0; text-transform:none; color:var(--muted); }.check-control strong,.criterion-card strong,.provider-card li,.decision-item strong { font-size:16px; }.check-control small,.criterion-card p,.literature-item p,.literature-item small,.statistic small,.equivalence-warning p,.equivalence-warning strong { font:400 14px/1.5 var(--body); color:var(--muted); }
.criterion-card code,.literature-item code,.provider-card header span,.result-toolbar span,.hash-card code,.decision-item span { font:400 12px/1.5 var(--mono); letter-spacing:0; }.literature-item a { font-size:15px; }.literature-item header { flex-wrap:wrap; }.provider-card h4 { font-size:22px; }.result-input textarea { font-size:14px; }.statistic strong { font-size:28px; }.equivalence-warning { grid-template-columns:1fr; gap:8px; }
.review-gate { background:#f2f6fa; }.review-gate label,.review-gate p { font:600 16px var(--body); }.review-gate small { font:400 14px/1.5 var(--body); color:var(--muted); }.sensitivity-ledger>p { font-size:15px; color:var(--muted); }.sensitivity-ledger h4 { font-size:20px; }.sensitivity-ledger>header span,.sensitivity-heading strong,.sensitivity-chip strong { font:600 14px var(--body); }.sensitivity-ledger>header code,.sensitivity-heading span,.sensitivity-chip small { font:400 12px var(--body); }
.declaration-facts { display:grid; grid-template-columns:1fr 1.4fr; gap:10px; }.declaration-facts dt { color:var(--muted); font-size:15px; }.declaration-facts dd { margin:0; }.laboratory-declaration code { overflow-wrap:anywhere; }.lifecycle-card { padding:20px; border:1px solid var(--line); border-radius:12px; }.lifecycle-card h4 { font-size:21px; margin:8px 0 20px; }.lifecycle-card>p,.lifecycle-card>div>span { font-size:14px; color:var(--muted); }.transaction-lifecycle { display:grid; gap:8px; padding:0; list-style:none; }.lifecycle-step { display:flex; justify-content:space-between; gap:12px; padding:10px; border:1px solid var(--line); border-radius:7px; font-size:14px; }.lifecycle-step small { font-size:12px; color:var(--muted); }.lifecycle-step.is-current { border-color:var(--blue); }.compiler-error { font-size:15px; }
.boundaries-section { padding:112px max(24px,calc((100vw - 1240px)/2)); background:#071c30; color:white; }.boundaries-section h2 { max-width:900px; }.boundaries-section .eyebrow span { color:#d7c3ff; }.trust-lede { max-width:66ch; font-size:21px; color:#cabbdd; }.boundary-grid { margin-top:52px; border:0; gap:24px; }.boundary-grid article { min-height:220px; padding:28px; border:1px solid #d7c2ef25; background:#122e46; border-radius:16px; }.boundary-grid span { color:#d7c3ff; font:600 15px var(--body); text-transform:none; letter-spacing:0; }.boundary-grid strong { font:600 23px/1.4 var(--display); color:#fff; }
.access-section { padding:112px max(24px,calc((100vw - 1240px)/2)); display:grid; grid-template-columns:1fr 1fr; gap:80px; background:#fff; }.access-copy>p:not(.eyebrow) { color:var(--muted); font-size:21px; }.access-audiences { display:grid; margin-top:36px; gap:20px; }.access-audiences a { padding:20px 0; display:grid; gap:8px; border-top:1px solid var(--line); }.access-audiences span { color:var(--blue); font-size:16px; }.access-audiences strong { color:var(--ink); font-size:18px; font-weight:600; }
.access-form { padding:32px; background:#f2f6fa; border:1px solid var(--line-soft); border-radius:20px; align-self:start; }.access-form>header { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; padding-bottom:24px; border-bottom:1px solid var(--line); font-size:15px; }.access-form>header strong { font-weight:400; color:var(--muted); }.access-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:24px; }.access-form label { display:grid; gap:8px; color:#314b62; font-size:16px; font-weight:600; }.access-form-wide { grid-column:1/-1; }
.consent-row { display:grid!important; grid-template-columns:22px minmax(0,1fr)!important; gap:12px!important; align-items:start; margin:24px 0 8px; font-weight:400!important; }.consent-row input { width:20px; height:20px; min-height:20px; margin:3px 0 0; accent-color:var(--blue); }.consent-row a { color:var(--blue); text-decoration:underline; }.access-form-note { color:var(--muted); font-size:14px; margin:8px 0 24px 34px; }.access-form .button { width:100%; }.access-status { min-height:1.5em; font:400 15px/1.5 var(--body); color:var(--muted); margin:16px 0 0; }.access-status.is-success { color:var(--green); }.access-status.is-error { color:var(--danger); }.access-status:empty { display:none; }
body>footer { background:#f2f6fa; border-top:1px solid var(--line); color:var(--muted); padding:54px max(24px,calc((100vw - 1240px)/2)); display:grid; grid-template-columns:1fr auto 1fr; gap:42px; align-items:start; }.footer-brand { display:block; width:182px; height:42px; font-size:0; color:transparent; background:url('/brand/logos/singularcell-horizontal-v1.5.png') left center/contain no-repeat; }body>footer p,body>footer>span { font:400 14px/1.6 var(--body); letter-spacing:0; max-width:50ch; }body>footer nav { display:grid; grid-template-columns:1fr 1fr; gap:10px 24px; }body>footer nav a { min-height:32px; font-size:16px; color:var(--ink); }body>footer>span { grid-column:1/-1; }.reveal-ready { opacity:1; transform:none; }
@media(max-width:1100px) {
 .site-header { gap:18px; }.site-header nav { gap:16px; font-size:15px; }.site-header nav a:nth-child(3),.site-header nav a:nth-child(4) { display:none; }
 .hero { padding-block:74px; min-height:680px; }.hero-copy { width:min(66%,700px); max-width:700px; }.cell-field { width:100%; }.hero-lede { max-width:580px; }
 .journey-section { grid-template-columns:1fr; gap:30px; }.journey-intro { max-width:680px; }.journey-intro h2 br { display:none; }.journey-intro p:last-child { max-width:55ch; }.teams-section { gap:40px; }.teams-image { min-height:550px; }.access-section { gap:40px; }
 .compiler-intro { flex-direction:column; gap:12px; }.compiler-shell { grid-template-columns:190px minmax(0,1fr); }.stage-panel { padding:26px; }.evidence-dashboard { grid-template-columns:1fr; }
}
@media(max-width:760px) {
 html { scroll-behavior:auto; }.site-header { height:74px; padding:0 20px; grid-template-columns:1fr auto; gap:12px; }.site-header nav { display:none; }.site-header .brand { width:155px; height:52px; }.nav-action { min-height:44px; padding:10px 14px; font-size:15px; }.nav-action span { display:none; }
 .hero { min-height:0; padding:54px 24px 86px; }.hero-copy { width:100%; max-width:100%; }.hero h1 { font-size:clamp(40px,10.4vw,56px); line-height:1.06; margin:20px 0; }.hero h1 br { display:none; }.hero h1 em { display:block; }.hero-lede { font-size:18px; max-width:34ch; }.hero-actions { display:flex; flex-wrap:wrap; gap:10px; }.hero-actions .button { width:auto; padding:12px 18px; }.hero-proof { gap:12px 18px; margin-top:26px; display:grid; grid-template-columns:1fr 1fr; }.hero-footnote { max-width:34ch; }
 .cell-field { top:0; bottom:0; height:100%; width:100%; }.cell-field picture,.micrograph-video { inset:0; width:100%; height:100%; }.cell-field::after { background:linear-gradient(90deg,#071a2bf7,#071a2bc9),linear-gradient(0deg,#071a2b 5%,transparent 70%); }.scan-line { left:16%; }
 .journey-section,.product-thesis,.compiler-section,.boundaries-section,.access-section { padding:72px 24px; }.journey-section { gap:28px; }.journey-intro p:last-child { font-size:19px; }
 .contract-preview header { flex-wrap:wrap; gap:8px; }.preview-question { padding:24px 20px; }.preview-question strong { font-size:23px; }.preview-question small { min-height:0; }.preview-flow { grid-template-columns:repeat(5,125px); overflow-x:auto; padding:0 18px 20px; scroll-snap-type:x mandatory; }.preview-node { scroll-snap-align:start; }.contract-preview footer { display:grid; gap:5px; }
 .product-thesis { grid-template-columns:1fr; gap:16px; }.product-thesis>p { font-size:20px; }.architecture-flow { margin-top:14px; }.architecture-flow li { grid-template-columns:26px 1fr; gap:8px 18px; padding:22px 0; }.architecture-flow strong { grid-column:2; font-size:19px; }.architecture-flow span { font-size:23px; }
 .teams-section { grid-template-columns:1fr; padding:0 24px 72px; gap:36px; }.handoff-map { padding:24px 20px; }.handoff-party { gap:12px; }.handoff-party strong { font-size:19px; }.handoff-party p { font-size:15px; }.handoff-hub { gap:12px; padding:18px 12px; }.handoff-hub strong { font-size:23px; }.handoff-hub p { font-size:15px; }.teams-copy article p { font-size:19px; }
 .compiler-section { padding-inline:16px; }.compiler-intro { padding-inline:8px; }.compiler-shell { grid-template-columns:1fr; }.stage-rail { display:flex; overflow-x:auto; padding:12px; border-right:0; border-bottom:1px solid var(--line); gap:8px; }.rail-label { display:none; }.stage-button { min-width:155px; min-height:76px; padding:12px 10px 12px 44px; }.stage-button small { font-size:12px; }.stage-button strong { font-size:15px; }.stage-button::before { display:none; }.stage-button span { top:17px; }
 .stage-panel { min-height:0; padding:24px 20px; }.panel-heading h3 { font-size:28px; }.form-grid,.contract-columns,.literature-list { grid-template-columns:1fr; }.field-wide { grid-column:auto; }.field { font-size:16px; }.panel-actions { display:grid; gap:12px; }.panel-actions .button { width:100%; }.metadata-grid { grid-template-columns:1fr; }.statistics-grid { grid-template-columns:1fr 1fr; }.declaration-facts { grid-template-columns:1fr; }.declaration-facts dd { margin-bottom:14px; }.section-lede { font-size:20px; }.demo-disclosure { font-size:14px; }
 .boundary-grid { grid-template-columns:1fr; margin-top:32px; gap:16px; }.boundary-grid article { min-height:180px; }.boundary-grid strong { font-size:22px; }.trust-lede { font-size:20px; }
 .access-section { grid-template-columns:1fr; gap:28px; }.access-form { padding:24px 20px; }.access-form-grid { grid-template-columns:1fr; }.access-form-wide { grid-column:auto; }.access-copy>p:not(.eyebrow) { font-size:20px; }.access-audiences { gap:0; }
 body>footer { grid-template-columns:1fr; gap:22px; padding:40px 24px; }body>footer nav { grid-template-columns:repeat(4,auto); gap:12px; }.footer-brand { width:180px; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; }.micrograph,.scan-line,.handoff-connector i { animation:none; }.micrograph-video { visibility:hidden; }.scan-line { top:50%; opacity:.4; }.button { transition:none; } }
@media(max-width:760px) {
 .site-header { grid-template-columns:1fr auto; }.site-header>.nav-action { display:none; }
 .mobile-nav { display:block; position:relative; }.mobile-nav summary { cursor:pointer; list-style:none; min-width:74px; min-height:44px; padding:10px 16px; border:1px solid #cbd8e5; border-radius:8px; font:600 16px var(--body); }.mobile-nav summary::-webkit-details-marker { display:none; }
 .mobile-nav nav { display:grid; position:absolute; top:52px; right:0; padding:14px; width:min(300px,calc(100vw - 40px)); background:white; border:1px solid #e0d8e9; border-radius:12px; box-shadow:0 16px 40px #10243a20; gap:2px; }
 .mobile-nav:not([open]) nav { display:none; }.mobile-nav nav a { display:flex!important; padding:9px 12px; min-height:44px; font-size:17px; color:#10243a; }.mobile-nav nav a:last-child { background:#edf4fc; border-radius:7px; color:#125edc; }
 .criterion-card { grid-template-columns:1fr; gap:8px; }.criterion-card code { overflow-wrap:anywhere; }.decision-item { display:grid; gap:8px; }
}

/* Glass direction: microscopy remains the subject; translucent surfaces frame
   navigation only; study records and forms remain opaque and distraction-free.
   Solid defaults remain usable without backdrop-filter. Scoped to homepage. */
.glass-site {
 min-width:0;
 --body:var(--sc-ui); --sc-body:var(--sc-ui);
 --glass-light:#f4f8ffeb; --glass-dark:#102b43ed;
 --glass-edge:#ffffff80; --glass-shadow:0 20px 64px #102f5414;
}
.glass-site .site-header {
 width:100%; max-width:none; height:88px;
 top:0; margin:0; padding:0 max(32px,calc((100vw - 1320px)/2)); gap:30px;
 border:0; border-bottom:1px solid #ffffff17; border-radius:0;
 background:#07131ff2; box-shadow:none;
}
.glass-site .site-header .brand { width:196px; min-width:196px; height:46px; }
.glass-site .site-header nav { color:#bac7d5; }
.glass-site .nav-action { border-radius:10px; background:linear-gradient(105deg,#125edc,#614ee7); box-shadow:none; }
.glass-site .nav-action:hover { background:linear-gradient(105deg,#0d54cb,#523fd7); }
.glass-site .hero { padding-top:86px; padding-bottom:60px; min-height:min(760px,calc(100svh - 88px)); background:#071a2b; }
.glass-site .hero .eyebrow { display:inline-flex; margin-bottom:0; padding:0; border:0; background:none; box-shadow:none; }
.glass-site .hero .eyebrow span { margin:0; color:#efb5c8; }
.glass-site .hero h1 { margin-top:24px; }
.glass-site .hero h1 em { color:#d3b7ee; }
@supports (background-clip:text) {
 .glass-site .hero h1 em { background:linear-gradient(105deg,#8fdded 0%,#d3b7ee 48%,#f4a9c0 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
}
.glass-site .hero h1 { letter-spacing:-.04em; line-height:1.14; }
.glass-site .hero-lede { max-width:610px; line-height:1.65; }
.glass-site .hero-proof { width:fit-content; max-width:100%; margin-top:32px; padding:20px 0 0; border:0; border-top:1px solid #ffffff30; border-radius:0; background:none; box-shadow:none; }
.glass-site .hero-proof span { color:#e0edfb; font-size:16px; align-items:center; }
.glass-site .hero-proof span::before { content:""; width:5px; height:5px; border-radius:50%; background:#efb5c8; flex-shrink:0; }
.glass-site .hero .button { border-radius:999px; min-height:56px; padding-inline:26px; border-width:2px; background-clip:border-box; transform:none; transition:background-color 160ms ease,border-color 160ms ease; }
.glass-site .hero .button:hover { transform:none; }
.glass-site .nav-action { border-radius:999px; }
.glass-site .site-header nav a { padding-inline:6px; border-radius:999px; transition:background 180ms ease,color 180ms ease; }
.glass-site .site-header nav a:hover { background:#ffffff0d; color:#fff; }
.glass-site .hero .button-primary,.glass-site .hero .button-primary:hover { box-shadow:none; }
.glass-site .hero .button-quiet { background:#102b43; }
.glass-site .journey-section { background:#f3f7fc; }
.glass-site .contract-preview { background:#fff; border:1px solid var(--line); border-radius:20px; box-shadow:0 12px 36px #10243a08; -webkit-backdrop-filter:none; backdrop-filter:none; }
.glass-site .contract-preview header { border-bottom:1px solid var(--line); background:#fff; border-radius:20px 20px 0 0; }
.glass-site .contract-preview footer span { font:400 14px/1.5 var(--body); letter-spacing:0; text-transform:none; color:#536679; }
.glass-site .contract-preview footer strong { font:600 14px/1.5 var(--body); }
.glass-site .preview-node { background:#f7f9fc; border-color:var(--line); }
.glass-site .preview-node.active { background:#f0edff; border-color:#7770d4; box-shadow:none; }
.glass-site .handoff-map { background:#0b2338; border:1px solid #294359; border-radius:20px; box-shadow:none; }
.glass-site .handoff-hub { background:#16334d; border-color:#57728d; box-shadow:none; border-radius:12px; }
.glass-site .compiler-section { background:#f3f7fc; }
.glass-site .compiler-shell { background:#fff; border:1px solid var(--line); box-shadow:0 12px 36px #10243a08; }
.glass-site .stage-rail { background:#f7f9fc; }
.glass-site .boundaries-section { background:#071c30; }
.glass-site .boundary-grid article { background:#102b43; border-color:#365269; border-radius:16px; box-shadow:none; }
.glass-site .access-section { background:#fff; }
.glass-site .access-form { background:#fff; border-color:var(--line); box-shadow:0 12px 36px #10243a08; border-radius:20px; -webkit-backdrop-filter:none; backdrop-filter:none; }
.glass-site .access-form input,.glass-site .access-form select,.glass-site .access-form textarea { background:#fff; }
.glass-site .architecture-flow { gap:0; border:0; border-top:1px solid var(--line); }
.glass-site .architecture-flow li { min-height:82px; border:0; border-bottom:1px solid var(--line); background:none; padding:18px 0; border-radius:0; }
.glass-site .architecture-flow span { color:#125edc; }
.glass-site .teams-copy article { padding:22px 0; margin-top:0; background:none; border:0; border-top:1px solid var(--line); border-radius:0; }
.glass-site .button:focus-visible,.glass-site .nav-action:focus-visible { outline:3px solid #5457e5; outline-offset:4px; }
@media(forced-colors:active) { .glass-site .hero h1 em { background:none; color:CanvasText; -webkit-text-fill-color:CanvasText; } }
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
 .glass-site { --glass-light:#f4f8ffd9; --glass-dark:#102b438c; }
 .glass-site .site-header { -webkit-backdrop-filter:blur(20px) saturate(135%); backdrop-filter:blur(20px) saturate(135%); }
}
@media(hover:hover) and (pointer:fine) {
 .glass-site .preview-node,.glass-site .boundary-grid article { transition:transform 220ms ease,border-color 220ms ease,box-shadow 220ms ease; }
 .glass-site .preview-node:hover { transform:translateY(-3px); border-color:#125edc; box-shadow:0 8px 18px #125edc12; }
 .glass-site .boundary-grid article:hover { transform:translateY(-4px); border-color:#dcc7ff85; box-shadow:0 16px 28px #00000014; }
 .glass-site .hero-actions .button span,.glass-site .teams-copy a span { transition:transform 180ms ease; }
 .glass-site .hero-actions .button:hover span,.glass-site .teams-copy a:hover span { transform:translateX(3px); }
}
/* Animate arrivals only after observation; content is never hidden awaiting JS. */
@media(prefers-reduced-motion:no-preference) {
 .glass-site .reveal-ready.is-visible { animation:glass-arrive 500ms ease both; }
 @keyframes glass-arrive { from { transform:translateY(16px); } to { transform:translateY(0); } }
}
.glass-site.motion-paused .reveal-ready.is-visible { animation:none; }
@media(max-width:1100px) { .glass-site .site-header { gap:16px; }.glass-site .hero { padding-top:156px; } }
@media(max-width:760px) {
 .glass-site .site-header { width:100%; top:0; height:72px; margin:0; padding:0 20px; border-radius:0; }
 .glass-site .site-header .brand { width:164px; min-width:164px; height:38px; }
 .glass-site .mobile-nav summary { color:#fff; background:#ffffff0d; border-color:#ffffff2b; border-radius:9px; }
 .glass-site .mobile-nav nav { background:#f8fbff; box-shadow:0 18px 48px #071c3033; }
 .glass-site .hero { padding-top:52px; padding-bottom:72px; min-height:0; }
 .glass-site .hero .eyebrow { font-size:14px; padding:0; }
 .glass-site .hero-proof { display:none; }
 .glass-site .hero-proof span { font-size:15px; line-height:1.4; }
 .glass-site .contract-preview,.glass-site .access-form { -webkit-backdrop-filter:none; backdrop-filter:none; background:#fff; }
 .glass-site .site-header { -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); }
}
@media(prefers-reduced-motion:reduce) {
 .glass-site .reveal-ready.is-visible { animation:none; }
 .glass-site .hero .button { transition:none; }
 .glass-site .preview-node,.glass-site .preview-node:hover,.glass-site .boundary-grid article,.glass-site .boundary-grid article:hover,.glass-site .hero-actions .button span,.glass-site .hero-actions .button:hover span,.glass-site .teams-copy a span,.glass-site .teams-copy a:hover span { transition:none; transform:none; }
 .glass-site .button:hover { transform:none; }
}
@media(prefers-reduced-transparency:reduce) {
 .glass-site { --glass-light:#f4f8ff; --glass-dark:#102b43; }
 .glass-site .site-header,.glass-site .hero-proof,.glass-site .hero .eyebrow,.glass-site .hero .button-quiet,.glass-site .contract-preview,.glass-site .access-form { -webkit-backdrop-filter:none; backdrop-filter:none; }
}

/* Product typography: true variable weights, open spacing, quiet hierarchy.
   Keep technical identifiers monospace and long-form research on Source Sans. */
.glass-site { font-weight:400; font-synthesis:none; }
.glass-site h1,.glass-site h2,.glass-site h3 { font-weight:500; }
.glass-site h2 { font-size:clamp(32px,3.6vw,48px); line-height:1.2; letter-spacing:-.035em; }
.glass-site .hero h1 { font-size:clamp(46px,5.4vw,76px); line-height:1.05; letter-spacing:-.05em; }
.glass-site .hero-lede { font-size:20px; line-height:1.6; max-width:46ch; }
.glass-site .site-header nav { font-weight:500; font-size:15px; gap:16px; }
.glass-site .button,.glass-site .nav-action { font-weight:500; font-size:16px; letter-spacing:0; }
.glass-site .eyebrow { font-weight:500; letter-spacing:.01em; }
.glass-site .hero .eyebrow { font-size:16px; }
.glass-site .preview-question strong { font-weight:500; line-height:1.4; letter-spacing:-.02em; }
.glass-site .preview-question small { line-height:1.65; }
.glass-site .preview-node small,.glass-site .preview-node b { font-size:14px; line-height:1.45; }
.glass-site .preview-node span { font-weight:500; }
.glass-site .architecture-flow span { font-weight:500; letter-spacing:-.02em; }
.glass-site .architecture-flow strong { font-size:19px; line-height:1.6; }
.glass-site .teams-copy article p { font-size:18px; line-height:1.7; }
.glass-site .section-lede,.glass-site .trust-lede { font-size:20px; line-height:1.65; }
.glass-site .field,.glass-site .access-form label { font-weight:500; line-height:1.55; }
.glass-site .field input,.glass-site .field textarea,.glass-site .field select,
.glass-site .access-form input,.glass-site .access-form textarea,.glass-site .access-form select { font:400 16px/1.6 var(--body); padding:14px 16px; }

/* A short, selection-first enquiry; sensitive study information is not needed. */
.access-form .access-form-grid { grid-template-columns:minmax(0,1fr); }
.enquiry-choices { min-width:0; margin:0; padding:0; border:0; }
.enquiry-choices legend { margin:0 0 12px; padding:0; color:#314b62; font-size:16px; font-weight:500; }
.enquiry-choice-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.access-form .enquiry-choice { display:flex; align-items:center; gap:10px; min-height:54px; padding:12px; border:1px solid #bccbd8; border-radius:12px; cursor:pointer; background:#fff; }
.access-form .enquiry-choice:has(input:checked) { border-color:#125edc; background:#edf4ff; color:#123f84; }
.access-form .enquiry-choice:has(input:focus-visible) { outline:2px solid #125edc; outline-offset:3px; }
.glass-site .access-form .enquiry-choice input { width:18px; height:18px; min-height:18px; flex:0 0 18px; padding:0; margin:0; accent-color:#125edc; }
.glass-site .access-form .enquiry-choice input:focus-visible { outline:none; box-shadow:none; }
.glass-site .access-form .consent-row input { padding:0; flex-shrink:0; }
.enquiry-note { border-top:1px solid var(--line); padding-top:8px; }
.enquiry-note summary { padding:10px 0; min-height:44px; cursor:pointer; color:#314b62; font-size:16px; }
.enquiry-note summary span { color:var(--muted); }
.enquiry-note label { margin-top:12px; }
.enquiry-note p { margin:10px 0 0; color:var(--muted); font-size:14px; line-height:1.6; }
.access-form-note a { color:#125edc; text-decoration:underline; text-underline-offset:3px; }
@media(max-width:360px) { .enquiry-choice-grid { grid-template-columns:minmax(0,1fr); } }
@media(max-width:720px) { .access-audiences { display:none; } }
.glass-site .field small { font-size:14px; line-height:1.6; }
.glass-site .stage-button strong { font-weight:500; }
.glass-site .stage-button small,.glass-site .runtime-status,.glass-site .status-chip { font-size:14px; line-height:1.45; }
.glass-site code,.glass-site pre,.glass-site #sequence-hash { font-family:var(--sc-utility); }
@media(max-width:1100px) and (min-width:761px) {
 .glass-site .site-header { gap:12px; padding-inline:16px; }
 .glass-site .site-header nav { gap:8px; font-size:14px; }
 .glass-site .nav-action { padding-inline:16px; }
}
@media(max-width:760px) {
 .glass-site .hero h1 { font-size:clamp(38px,10.4vw,54px); line-height:1.06; margin:18px 0; }
 .glass-site .hero-lede { font-size:18px; line-height:1.55; margin-bottom:22px; }
 .glass-site .hero-actions { margin:22px 0 18px; gap:10px; }
 .glass-site .hero .button { min-height:48px; padding:12px 18px; }
 .glass-site .hero-footnote { max-width:34ch; }
 .glass-site .architecture-flow li { min-height:0; padding:16px 0; gap:6px 14px; }
 .glass-site .architecture-flow span { font-size:21px; }
 .glass-site .site-header .mobile-nav nav { font-size:16px; }
 .glass-site .mobile-nav summary { font-weight:500; }
 .glass-site .hero-proof span { font-size:14px; }
 .glass-site .preview-flow { grid-template-columns:repeat(5,140px); }
 .glass-site .stage-button { min-width:170px; }
 .glass-site .architecture-flow strong { font-size:18px; }
 .glass-site #study-question { min-height:200px; }
}

/* Light specimen direction — the established blue-violet wordmark sits on a
   quiet surface while microscopy is contained as the hero's evidence window. */
.glass-site .site-header {
 background:rgba(255,255,255,.92);
 border-bottom:1px solid #e6e9f3;
 box-shadow:0 8px 28px rgba(24,42,80,.045);
}
.glass-site .site-header nav { color:#536379; }
.glass-site .site-header nav a:hover { color:#3c47c9; background:#f1f2ff; }
.glass-site .nav-action {
 background:linear-gradient(105deg,#176bff 0%,#6553ea 100%);
 box-shadow:0 8px 22px rgba(60,71,201,.16);
}
.glass-site .nav-action:hover { background:linear-gradient(105deg,#0f5fe9 0%,#5844da 100%); }
.glass-site .hero {
 position:relative;
 min-height:min(760px,calc(100svh - 88px));
 padding-top:76px;
 padding-bottom:76px;
 background:linear-gradient(135deg,#ffffff 0%,#f8faff 58%,#f4f2ff 100%);
 color:var(--ink);
}
.glass-site .hero-copy { width:min(52%,650px); max-width:650px; }
.glass-site .hero .eyebrow span { color:#5260c9; }
.glass-site .hero h1 { max-width:690px; color:#10243a; line-height:1.08; }
@supports (background-clip:text) {
 .glass-site .hero h1 em {
  background:linear-gradient(100deg,#176bff 0%,#5a57ee 55%,#8050e8 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
 }
}
.glass-site .hero-lede { color:#51657a; }
.glass-site .hero .button-primary {
 background:linear-gradient(105deg,#176bff 0%,#6553ea 100%);
 border-color:transparent;
 box-shadow:0 10px 26px rgba(37,79,196,.16);
}
.glass-site .hero .button-primary:hover { background:linear-gradient(105deg,#0f5fe9 0%,#5844da 100%); }
.glass-site .hero .button-quiet { color:#18354f; border-color:#bdc9d8; background:rgba(255,255,255,.72); }
.glass-site .hero .button-quiet:hover { color:#293bb9; border-color:#969edd; background:#fff; }
.glass-site .hero-proof { border-top-color:#d9e0eb; }
.glass-site .hero-proof span { color:#526579; }
.glass-site .hero-proof span::before { background:#7060e7; }
.glass-site .hero-footnote { color:#687b8e; }
.glass-site .cell-field {
 inset:7% max(28px,calc((100vw - 1320px)/2)) 7% auto;
 width:min(45vw,650px);
 height:auto;
 border:1px solid rgba(115,117,194,.22);
 border-radius:34px;
 background:#edf2fb;
 overflow:hidden;
 box-shadow:0 34px 80px rgba(37,49,99,.16),0 2px 10px rgba(30,44,88,.06);
}
.glass-site .cell-field picture,.glass-site .micrograph-video { inset:0; width:100%; height:100%; }
.glass-site .micrograph,.glass-site .micrograph-video {
 opacity:.9;
 filter:grayscale(.35) saturate(.9) contrast(1.04) brightness(1.02);
}
.glass-site .cell-field::before {
 background:linear-gradient(135deg,#1b65dc 8%,#6547ca 54%,#36a9d2 92%);
 opacity:.52;
 mix-blend-mode:color;
}
.glass-site .cell-field::after {
 background:
  linear-gradient(90deg,rgba(244,247,255,.2),transparent 24%),
  linear-gradient(0deg,rgba(8,24,45,.38),transparent 46%);
}
.glass-site .scan-line { left:5%; right:5%; }

@media(max-width:1100px) and (min-width:761px) {
 .glass-site .hero { padding-top:72px; }
 .glass-site .hero-copy { width:min(54%,610px); }
 .glass-site .cell-field { right:20px; width:40vw; }
}
@media(max-width:760px) {
 .glass-site .site-header { background:rgba(255,255,255,.96); border-bottom-color:#e6e9f3; }
 .glass-site .mobile-nav summary { color:#23384e; background:#f6f7ff; border-color:#d8dced; }
 .glass-site .hero {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:32px;
  padding:48px 18px 28px;
  background:linear-gradient(150deg,#fff 0%,#f7f9ff 65%,#f2f0ff 100%);
 }
 .glass-site .hero-copy { order:1; width:100%; max-width:none; }
 .glass-site .cell-field {
  position:relative;
  order:2;
  inset:auto;
  width:100%;
  height:clamp(220px,58vw,320px);
  border-radius:24px;
  box-shadow:0 22px 48px rgba(37,49,99,.13);
 }
 .glass-site .hero h1 { color:#10243a; }
 .glass-site .hero .eyebrow span { color:#5260c9; }
 .glass-site .hero-lede { color:#51657a; }
 .glass-site .hero-actions { display:grid; grid-template-columns:1fr 1fr; }
 .glass-site .hero-actions .button { width:100%; padding-inline:14px; }
 .glass-site .hero .button-quiet { color:#18354f; border-color:#bdc9d8; background:#fff; }
 .glass-site .hero-footnote { color:#687b8e; }
}
@media(max-width:430px) {
 .glass-site .hero-actions { grid-template-columns:1fr; }
 .glass-site .hero { padding-inline:16px; }
}

/* Full-field scientific revamp — one direct promise over authentic live-cell
   microscopy. The white navigation protects the approved wordmark; the hero
   uses a single navy reading mask instead of competing panels or glass cards. */
.glass-site .hero {
 min-height:min(720px,calc(100svh - 88px));
 padding:clamp(72px,8vw,112px) max(32px,calc((100vw - 1320px)/2)) 74px;
 align-items:center;
 background:#071523;
 color:#fff;
 isolation:isolate;
}
.glass-site .cell-field {
 position:absolute;
 inset:0;
 width:100%;
 height:100%;
 border:0;
 border-radius:0;
 background:#071523;
 box-shadow:none;
 z-index:0;
}
.glass-site .cell-field picture,
.glass-site .micrograph-video {
 position:absolute;
 inset:0;
 width:100%;
 height:100%;
}
.glass-site .micrograph,
.glass-site .micrograph-video {
 width:100%;
 height:100%;
 object-fit:cover;
 object-position:center center;
 opacity:1;
 filter:saturate(.88) contrast(1.08) brightness(.78);
}
.glass-site .cell-field::before {
 content:"";
 position:absolute;
 inset:0;
 background:linear-gradient(90deg,rgba(4,13,25,.98) 0%,rgba(5,16,30,.93) 34%,rgba(6,18,33,.57) 61%,rgba(6,15,28,.18) 100%);
 opacity:1;
 mix-blend-mode:normal;
 z-index:2;
}
.glass-site .cell-field::after {
 content:"";
 position:absolute;
 inset:0;
 background:linear-gradient(0deg,rgba(4,13,25,.72) 0%,transparent 33%,rgba(7,19,34,.12) 100%);
 z-index:2;
}
.glass-site .hero-copy {
 position:relative;
 z-index:3;
 width:min(65%,790px);
 max-width:790px;
 margin:0;
}
.glass-site .hero .eyebrow span { color:#aeb9ff; }
.glass-site .hero h1 {
 max-width:790px;
 margin:22px 0 26px;
 color:#fff;
 font-size:clamp(50px,5.45vw,78px);
 line-height:1.03;
 letter-spacing:-.052em;
 text-wrap:balance;
}
@supports (background-clip:text) {
 .glass-site .hero h1 em {
  background:linear-gradient(100deg,#d9e6ff 0%,#bbb8ff 55%,#d8bfff 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
 }
}
.glass-site .hero-lede {
 max-width:650px;
 margin-bottom:30px;
 color:#d6e0eb;
 font-size:clamp(18px,1.6vw,21px);
 line-height:1.58;
}
.glass-site .hero .button-primary {
 background:linear-gradient(105deg,#176bff 0%,#6553ea 100%);
 box-shadow:0 12px 30px rgba(16,63,175,.28);
}
.glass-site .hero .button-quiet {
 color:#fff;
 border-color:#8295aa;
 background:rgba(7,24,42,.72);
}
.glass-site .hero .button-quiet:hover { color:#fff; border-color:#b7c8da; background:#102b43; }
.glass-site .hero-proof { border-top-color:rgba(220,232,245,.26); }
.glass-site .hero-proof span { color:#d8e5f1; }
.glass-site .hero-proof span::before { background:#a8a4ff; }
.glass-site .hero-footnote { color:#aebdcb; }
.glass-site .footer-media-credit { color:#445f78; text-decoration:underline; text-decoration-color:#445f7866; text-underline-offset:3px; }
.glass-site .footer-media-credit:hover { color:#105dcc; text-decoration-color:currentColor; }

@media(max-width:1100px) and (min-width:761px) {
 .glass-site .hero { padding-top:84px; }
 .glass-site .hero-copy { width:min(70%,730px); }
 .glass-site .micrograph,.glass-site .micrograph-video { object-position:58% center; }
}
@media(max-width:760px) {
 .glass-site .hero {
  display:flex;
  min-height:calc(100svh - 72px);
  padding:68px 20px 64px;
  background:#071523;
 }
 .glass-site .cell-field {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border-radius:0;
  box-shadow:none;
 }
 .glass-site .micrograph,.glass-site .micrograph-video {
  object-position:62% center;
  filter:saturate(.82) contrast(1.08) brightness(.65);
 }
 .glass-site .cell-field::before {
  background:linear-gradient(90deg,rgba(4,13,25,.97) 0%,rgba(5,16,30,.88) 55%,rgba(6,18,33,.38) 100%);
 }
 .glass-site .cell-field::after {
  background:linear-gradient(0deg,rgba(4,13,25,.9) 0%,rgba(4,13,25,.2) 62%,rgba(4,13,25,.35) 100%);
 }
 .glass-site .hero-copy { order:1; width:100%; max-width:650px; }
 .glass-site .hero h1 { color:#fff; font-size:clamp(42px,11.5vw,60px); line-height:1.03; }
 .glass-site .hero h1 br { display:block; }
 .glass-site .hero h1 em { display:inline; }
 .glass-site .hero .eyebrow span { color:#b8c0ff; }
 .glass-site .hero-lede { color:#d8e2ec; max-width:36ch; }
 .glass-site .hero .button-quiet { color:#fff; border-color:#8295aa; background:rgba(7,24,42,.76); }
 .glass-site .hero-footnote { color:#afbfce; }
}
@media(max-width:430px) {
 .glass-site .hero { padding:54px 16px 70px; }
 .glass-site .hero h1 { font-size:clamp(40px,11.8vw,52px); }
 .glass-site .hero-actions { grid-template-columns:1fr; }
}

/* Long-form product homepage: one calm reading system, with motion reserved for
   authentic microscopy and a floating navigation surface. */
.glass-site .site-header {
 position:sticky;
 top:12px;
 width:min(calc(100% - 32px),1360px);
 max-width:1360px;
 height:72px;
 margin:12px auto -84px;
 padding:0 14px 0 22px;
 grid-template-columns:150px minmax(0,1fr) auto;
 align-items:center;
 gap:20px;
 border:1px solid rgba(214,220,236,.9);
 border-radius:22px;
 background:rgba(255,255,255,.9);
 box-shadow:0 14px 42px rgba(13,31,60,.12);
}
.glass-site .site-header .brand { width:150px; min-width:150px; height:42px; justify-self:start; background-position:left center; }
.glass-site .site-header nav { justify-self:center; align-self:center; color:#526277; gap:12px; }
.glass-site .site-header nav a { display:inline-flex; min-height:46px; align-items:center; justify-content:center; padding-inline:8px; line-height:1; }
.header-actions { display:flex; align-items:center; justify-self:end; align-self:center; gap:8px; }
.header-signin { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:0 14px; border-radius:999px; color:#243950; font-size:15px; font-weight:500; line-height:1; }
.header-signin:hover { color:#3f47c9; background:#f1f3ff; }
.glass-site .nav-action { display:inline-flex; min-height:46px; align-items:center; justify-content:center; padding:0 18px; line-height:1; }
.glass-site .hero { min-height:min(790px,100svh); padding-top:156px; }

.coordination-gap,.study-use-cases,.research-library-preview,.homepage-faq,.microscopy-stories {
 padding:clamp(88px,9vw,132px) max(24px,calc((100vw - 1240px)/2));
}
.section-heading-split { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(280px,.72fr); gap:clamp(36px,7vw,100px); align-items:end; }
.section-heading-split h2 { max-width:820px; margin:18px 0 0; color:#10243a; }
.section-heading-split>p { max-width:590px; margin:0; color:#5b6c7f; font-size:19px; line-height:1.75; }
.coordination-gap { background:#fff; }
.coordination-stages { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin-top:72px; border-top:1px solid #dce2eb; }
.coordination-stages article { padding:32px 34px 18px 0; border-right:1px solid #dce2eb; }
.coordination-stages article+article { padding-left:34px; }
.coordination-stages article:last-child { padding-right:0; border-right:0; }
.coordination-stages span,.use-case-grid span,.microscopy-story small,.research-preview-grid>a>span { color:#4d55cf; font-size:14px; font-weight:650; letter-spacing:.01em; }
.coordination-stages h3 { margin:22px 0 14px; color:#10243a; font-size:clamp(23px,2vw,29px); line-height:1.25; letter-spacing:-.03em; }
.coordination-stages p,.use-case-grid p { margin:0; color:#607185; font-size:16px; line-height:1.7; }

.microscopy-stories { background:#071827; color:#fff; overflow:hidden; }
.microscopy-stories .section-heading-split h2 { color:#fff; }
.microscopy-stories .section-heading-split>p { color:#b7c5d3; }
.microscopy-stories .eyebrow span,.microscopy-story small { color:#b8b8ff; }
.microscopy-grid { display:grid; grid-template-columns:1.12fr .88fr; gap:clamp(24px,3vw,42px); margin-top:64px; align-items:start; }
.microscopy-story { min-width:0; }
.microscopy-frame { position:relative; aspect-ratio:16/10; overflow:hidden; border:1px solid rgba(196,211,228,.24); border-radius:24px; background:#0d2234; box-shadow:0 22px 60px rgba(0,0,0,.22); }
.microscopy-story:nth-child(2) .microscopy-frame { aspect-ratio:1/1; }
.microscopy-frame img,.microscopy-frame video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.microscopy-frame video { z-index:1; }
.microscopy-story>div+div { padding:25px 4px 0; }
.microscopy-story h3 { margin:0 0 12px; color:#fff; font-size:clamp(25px,2.4vw,34px); line-height:1.2; letter-spacing:-.035em; }
.microscopy-story p { max-width:58ch; margin:0; color:#afbecd; font-size:16px; line-height:1.7; }
.media-disclosure { max-width:78ch; margin:44px 0 0; color:#8295a8; font-size:13px; line-height:1.6; }

.study-use-cases { position:relative; isolation:isolate; overflow:hidden; background:#f3f7fc; }
.study-use-cases::before { content:""; position:absolute; z-index:-1; width:min(700px,60vw); aspect-ratio:1; right:-18%; top:-26%; border-radius:50%; background:linear-gradient(135deg,rgba(117,103,255,.1),rgba(58,142,255,.035) 46%,transparent 72%); filter:blur(2px); pointer-events:none; }
.use-case-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:70px; border-top:1px solid #d6deea; border-left:1px solid #d6deea; }
.use-case-grid article { position:relative; min-height:250px; overflow:hidden; padding:28px; border-right:1px solid #d6deea; border-bottom:1px solid #d6deea; background:rgba(255,255,255,.52); transition:background-color 420ms ease,box-shadow 420ms ease,transform 420ms ease; }
.use-case-grid article::before { content:""; position:absolute; left:28px; right:28px; top:0; height:2px; background:linear-gradient(90deg,#1668f2,#7359ee); transform:scaleX(0); transform-origin:left; transition:transform 420ms cubic-bezier(.2,.8,.2,1); }
.use-case-grid article::after { content:""; position:absolute; width:180px; height:180px; right:-90px; bottom:-110px; border-radius:50%; background:linear-gradient(135deg,rgba(112,89,238,.13),transparent 68%); opacity:.01; transform:scale(.72); transition:opacity 420ms ease,transform 520ms cubic-bezier(.2,.8,.2,1); pointer-events:none; }
.use-case-grid article.is-active { z-index:1; background:rgba(255,255,255,.94); box-shadow:0 18px 46px rgba(42,65,115,.1); transform:translateY(-3px); }
.use-case-grid article.is-active::before { transform:scaleX(1); }
.use-case-grid article.is-active::after { opacity:1; transform:scale(1); }
.use-case-grid article.is-active span { color:#674fe0; }
.use-case-grid h3 { margin:44px 0 12px; color:#132b43; font-size:25px; letter-spacing:-.025em; }

.research-library-preview { background:#fff; }
.research-preview-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:62px; }
.research-preview-grid>a { display:flex; min-height:330px; flex-direction:column; padding:30px; border:1px solid #dce2eb; border-radius:18px; background:#fff; color:#10243a; transition:border-color 180ms ease,box-shadow 180ms ease,transform 180ms ease; }
.research-preview-grid h3 { margin:28px 0 16px; font-size:25px; line-height:1.3; letter-spacing:-.03em; }
.research-preview-grid p { margin:0 0 28px; color:#617185; line-height:1.7; }
.research-preview-grid strong { margin-top:auto; color:#3158c8; font-size:15px; }
.research-preview-grid>a:hover { transform:translateY(-4px); border-color:#abb4e7; box-shadow:0 18px 42px rgba(23,43,83,.08); }
.research-library-preview>.text-link { display:inline-flex; margin-top:32px; color:#3158c8; font-weight:600; }

.homepage-faq { display:grid; grid-template-columns:.72fr 1.28fr; gap:clamp(52px,9vw,130px); background:#f5f7fb; }
.faq-intro { align-self:start; position:sticky; top:120px; }
.faq-intro h2 { margin:18px 0 22px; color:#10243a; }
.faq-intro>p:last-child { color:#647487; font-size:18px; }
.faq-list { border-top:1px solid #ced7e3; }
.faq-list details { border-bottom:1px solid #ced7e3; }
.faq-list summary { display:flex; min-height:80px; align-items:center; justify-content:space-between; gap:24px; padding:20px 2px; color:#142b42; cursor:pointer; font-size:19px; font-weight:600; line-height:1.35; list-style:none; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:"+"; color:#4751cb; font-size:26px; font-weight:400; }
.faq-list details[open] summary::after { content:"−"; }
.faq-list details p { max-width:68ch; margin:0; padding:0 42px 26px 2px; color:#5e7083; font-size:16px; line-height:1.75; }
.footer-media-label { color:#445f78; }

@media(max-width:1100px) {
 .glass-site .site-header nav a:nth-child(4),.glass-site .site-header nav a:nth-child(5) { display:none; }
 .section-heading-split { grid-template-columns:1fr; gap:24px; }
 .microscopy-grid { grid-template-columns:1fr 1fr; }
}
@media(max-width:760px) {
 .glass-site .site-header { top:10px; width:calc(100% - 20px); height:60px; margin:10px auto -70px; padding:0 10px 0 16px; border:1px solid rgba(214,220,236,.94); border-radius:18px; box-shadow:0 10px 30px rgba(13,31,60,.12); }
 .glass-site .site-header .brand { width:150px; min-width:150px; height:38px; }
 .header-actions { display:none; }
 .glass-site .mobile-nav summary { color:#243950; background:#f4f5fb; border-color:#d8ddea; border-radius:12px; }
 .glass-site .hero { min-height:100svh; padding-top:124px; }
 .coordination-gap,.study-use-cases,.research-library-preview,.homepage-faq,.microscopy-stories { padding:76px 20px; }
 .coordination-stages,.use-case-grid,.research-preview-grid,.microscopy-grid,.homepage-faq { grid-template-columns:1fr; }
 .coordination-stages article,.coordination-stages article+article { padding:26px 0; border-right:0; border-bottom:1px solid #dce2eb; }
 .coordination-stages article:last-child { border-bottom:0; }
 .use-case-grid { margin-top:48px; }
 .use-case-grid article { min-height:0; padding:24px; }
 .use-case-grid article::before { left:24px; right:24px; }
 .use-case-grid h3 { margin-top:26px; }
 .microscopy-grid { gap:48px; margin-top:44px; }
 .microscopy-story:nth-child(2) .microscopy-frame { aspect-ratio:16/11; }
 .research-preview-grid { gap:14px; margin-top:44px; }
 .research-preview-grid>a { min-height:0; }
 .homepage-faq { gap:38px; }
 .faq-intro { position:static; }
 .faq-list summary { min-height:72px; font-size:17px; }
}
@media(prefers-reduced-motion:reduce) {
 .microscopy-frame video { display:none; }
 .research-preview-grid>a,.research-preview-grid>a:hover { transition:none; transform:none; }
 .study-use-cases::before { display:none; }
 .use-case-grid article,.use-case-grid article.is-active,.use-case-grid article::before,.use-case-grid article::after { transition:none; transform:none; }
}

@media(prefers-reduced-motion:no-preference) {
 .use-case-grid article.reveal-ready.is-visible { animation-delay:calc(var(--reveal-order,0) * 70ms); animation-fill-mode:backwards; }
}

/* Mobile first viewport: compact navigation, one clear action hierarchy and
   enough of the next section in view to make the page feel purposeful. */
@media(max-width:760px) {
 .glass-site .site-header {
  top:10px;
  width:calc(100% - 24px);
  height:62px;
  margin:10px auto -72px;
  padding:0 9px 0 15px;
  grid-template-columns:minmax(0,1fr) 44px;
  gap:10px;
  border-radius:18px;
 }
 .glass-site .site-header .brand {
  width:142px;
  min-width:142px;
  height:36px;
 }
 .glass-site .mobile-nav {
  width:44px;
  justify-self:end;
 }
 .glass-site .mobile-nav summary {
  position:relative;
  display:grid;
  width:44px;
  min-width:44px;
  min-height:44px;
  padding:0;
  place-items:center;
  overflow:hidden;
  border-color:#d8ddea;
  border-radius:13px;
  background:#f5f6fb;
  color:#243950;
  font-size:0;
 }
 .glass-site .mobile-nav summary::before {
  content:"";
  position:absolute;
  top:15px;
  left:13px;
  width:18px;
  height:14px;
  border-top:2px solid currentColor;
  border-bottom:2px solid currentColor;
 }
 .glass-site .mobile-nav summary::after {
  content:"";
  position:absolute;
  top:21px;
  left:13px;
  width:18px;
  height:2px;
  background:currentColor;
 }
 .glass-site .mobile-nav[open] summary::before {
  width:18px;
  height:2px;
  top:21px;
  border:0;
  background:currentColor;
  transform:rotate(45deg);
 }
 .glass-site .mobile-nav[open] summary::after {
  width:18px;
  transform:rotate(-45deg);
 }
 .glass-site .mobile-nav nav {
  top:54px;
  right:0;
  width:min(310px,calc(100vw - 32px));
  padding:10px;
  border-radius:16px;
 }
 .glass-site .hero {
  min-height:0;
  padding:120px 20px 52px;
  align-items:flex-start;
 }
 .glass-site .hero h1 {
  max-width:9.1em;
  margin:17px 0 22px;
  font-size:clamp(38px,10vw,44px);
  line-height:1.025;
  letter-spacing:-.048em;
  text-wrap:balance;
 }
 .glass-site .hero-lede {
  max-width:35ch;
  margin-bottom:20px;
  font-size:17px;
  line-height:1.52;
 }
 .glass-site .hero-actions {
  display:grid;
  grid-template-columns:1fr;
  gap:4px;
  width:100%;
  max-width:360px;
  margin:22px 0 16px;
 }
 .glass-site .hero-actions .button { width:100%; }
 .glass-site .hero-actions .button-primary {
  min-height:52px;
  justify-content:space-between;
 }
 .glass-site .hero-actions .button-quiet {
  min-height:44px;
  justify-content:flex-start;
  padding:8px 4px;
  border-color:transparent;
  background:transparent;
 }
 .glass-site .hero-actions .button-quiet:hover {
  border-color:transparent;
  background:transparent;
 }
 .glass-site .hero-actions .button-quiet span { margin-left:8px; }
 .glass-site .hero-footnote {
  max-width:32ch;
  font-size:14px;
  line-height:1.55;
 }
 .glass-site .micrograph,.glass-site .micrograph-video {
  object-position:68% center;
  filter:saturate(.86) contrast(1.08) brightness(.68);
 }
}

@media(max-width:370px) {
 .glass-site .site-header .brand { width:132px; min-width:132px; }
 .glass-site .hero { padding-inline:18px; }
 .glass-site .hero h1 { font-size:37px; }
}
