@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=Inter:wght@400;450;500;550;600;650&family=Inter+Tight:wght@400;450;500;550;600&display=swap');

/* Hypercell — engineering editorial system */
:root {
  --ink:#17191a; --paper:#fdfdfb; --soft:#f0f1ee; --muted:#626767;
  --line:#d4d7d3; --accent:#c8e53b; --dark-line:#3c4141;
  --body:'Inter',Arial,sans-serif; --display:'Inter Tight','Inter',Arial,sans-serif;
  --mono:'IBM Plex Mono',monospace; --gutter:clamp(24px,5vw,96px);
  --page-gutter:max(var(--gutter),calc((100vw - 1440px)/2));
}
* { box-sizing:border-box }
html { scroll-behavior:smooth; scroll-padding-top:100px }
body { margin:0; background:var(--paper); color:var(--ink); font:400 1rem/1.6 var(--body); -webkit-font-smoothing:antialiased }
::selection { background:var(--accent); color:var(--ink) }
a { color:inherit; text-decoration:none }
a,button,input,select,textarea { -webkit-tap-highlight-color:transparent }
button,input,select,textarea { font:inherit }
button { cursor:pointer }
img { display:block; max-width:100%; height:auto }
figure { margin:0 }
h1,h2,h3,h4,p { margin:0 0 1em }
h1,h2,h3,h4 { font-family:var(--display); font-weight:500; line-height:1.03; letter-spacing:-.035em; text-wrap:balance }
h2 { font-size:clamp(2.6rem,5.1vw,5rem); margin:0 }
h3 { font-size:2rem }
h4 { font-size:1.7rem }
em { font-style:normal }
small { font-size:.8em }
svg { display:block; max-width:100%; overflow:visible }
button,a,input,textarea,select,summary { touch-action:manipulation }
:focus-visible { outline:3px solid #798f05; outline-offset:5px }
.visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0 }
.skip { position:fixed; top:12px; left:24px; z-index:100; padding:12px 20px; transform:translateY(-160%); background:var(--accent) }
.skip:focus { transform:none }
.eyebrow,.mini,.step-number,.business-index,.application-index,.role,.cell-maker { font-family:var(--mono); font-size:.75rem; line-height:1.6; font-weight:400; letter-spacing:.04em }
.eyebrow { margin-bottom:32px }
.mini { display:block; color:var(--muted); margin-bottom:14px }
.section { padding:100px var(--page-gutter) }
.light { background:var(--paper) }
.home-section-head { display:grid; grid-template-columns:minmax(170px,1fr) minmax(0,2fr); gap:28px; margin-bottom:56px; align-items:start }
.home-section-head .eyebrow { margin:9px 0 0 }
.home-section-head>.home-stage { grid-column:2; margin-top:-6px }
.home-stage { display:inline-flex; align-items:center; gap:9px; width:fit-content; font-size:.875rem; line-height:1.5; color:var(--muted) }
.home-stage::before { content:''; width:6px; height:6px; flex:none; background:currentColor }
.button { display:inline-flex; gap:28px; align-items:center; justify-content:space-between; min-height:50px; padding:14px 20px; border:1px solid transparent; background:var(--ink); color:white; font-size:.875rem; font-weight:500; line-height:1.4; border-radius:0; transition:background .18s,color .18s }
.button:hover { background:#353939 }
.button>span { font-size:1.15rem }
.button.lime { background:var(--accent); color:var(--ink) }
.button.lime:hover { background:#dbf261 }
.under-link,.text-link { display:inline-flex; gap:18px; align-items:center; font-size:.875rem; font-weight:500; text-decoration:underline; text-underline-offset:6px; text-decoration-thickness:1px }
.under-link:hover,.text-link:hover { text-decoration-thickness:2px }

/* Navigation and opening statement */
header { display:flex; justify-content:space-between; align-items:center; gap:30px; min-height:84px; padding:18px var(--page-gutter); background:var(--paper); border-bottom:1px solid var(--line); position:sticky; top:0; z-index:20 }
.brand { width:218px; flex:none }
.brand img { width:100%; max-height:54px; object-fit:contain }
nav { display:flex; align-items:center; gap:30px; font-size:.875rem }
nav>a { padding:8px 0; position:relative }
nav>a:not(.nav-cta)::after { content:''; height:1px; background:var(--ink); position:absolute; bottom:3px; left:0; right:0; transform:scaleX(0); transform-origin:left; transition:transform .2s }
nav>a:hover::after { transform:scaleX(1) }
.nav-cta { background:var(--ink); color:#fff; padding:12px 19px }
.nav-cta:hover { background:#393d3c }
.menu { display:none; border:1px solid var(--line); background:transparent; padding:10px 14px; color:var(--ink); font-size:.875rem }
.home-hero { padding:64px var(--page-gutter) 0 }
.hero-content { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr); gap:50px; align-items:end; padding-bottom:54px }
.hero-heading .eyebrow { margin-bottom:25px }
.hero h1 { font-size:clamp(4.5rem,9.4vw,9rem); line-height:.93; font-weight:500; letter-spacing:-.045em; margin:0 }
.hero h1 em { color:#767b77 }
.hero-summary { max-width:370px; justify-self:end; padding-bottom:6px }
.hero-intro { font-size:clamp(1rem,1.35vw,1.25rem); color:#4e5451; line-height:1.65; margin:0 0 28px }
.actions { display:flex; flex-wrap:wrap; gap:23px; align-items:center }
.home-hero-visual { position:relative; background:#061319; overflow:hidden }
.home-hero-visual img { width:100%; height:clamp(340px,40vw,570px); object-fit:contain }
.hero-image-label { position:absolute; top:24px; left:28px; right:28px; color:#d6deda; display:flex; justify-content:space-between; gap:20px; font:.75rem/1.5 var(--mono); letter-spacing:.06em }
.hero-image-label span:first-child::before { content:'+'; margin-right:14px; color:var(--accent) }
.home-hero-visual figcaption { position:absolute; left:28px; bottom:20px; color:#c4cbc9; font-size:.75rem; padding:3px 8px; background:#061319b3 }

/* Alternating business stories, with an open data strip */
.business-section { padding-top:112px }
.business-grid { display:grid; gap:68px }
.business-card { display:grid; grid-template-columns:minmax(0,1.48fr) minmax(0,1fr); position:relative; border-top:1px solid var(--line); padding-top:24px; align-items:stretch; gap:44px }
.anchor-alias { position:absolute; top:0 }
.business-card figure { position:relative; align-self:stretch; min-width:0; background:var(--soft) }
.business-card figure img { width:100%; height:100%; min-height:360px; object-fit:cover; aspect-ratio:3/2 }
.business-card figure figcaption { position:absolute; left:16px; bottom:14px; right:16px; width:fit-content; max-width:calc(100% - 32px); padding:5px 9px; color:#fff; background:#17191abf; font-size:.75rem; line-height:1.5 }
.business-content { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:24px 0; min-width:0 }
.business-index { margin-bottom:40px; color:var(--muted) }
.business-content .home-stage { margin-bottom:19px }
.business-content h3 { font-size:clamp(2.7rem,4.8vw,4.4rem); margin-bottom:20px; max-width:440px }
.business-content>p { max-width:330px; color:var(--muted); line-height:1.7; margin-bottom:32px }
.business-actions { display:flex; align-items:center; gap:24px; flex-wrap:wrap }
.battery-business { grid-template-columns:minmax(0,1fr) minmax(0,1.48fr) }
.battery-business figure { grid-column:2; grid-row:1 }
.battery-business .business-content { grid-column:1; grid-row:1 }
.home-market-pulse { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.7fr); gap:70px; padding:56px 0 48px; margin-top:62px; border-top:1px solid var(--line) }
.home-market-caption h3 { font-size:2.5rem; margin:20px 0 }
.home-market-caption p { font-size:.875rem; color:var(--muted); max-width:280px }
.home-market-caption>a { font-size:.75rem; text-decoration:underline; text-underline-offset:4px }
.ess-capacity-chart { min-width:0 }
.ess-capacity-chart figcaption { display:flex; justify-content:space-between; gap:16px; font-size:.875rem; margin-bottom:24px }
.ess-capacity-chart figcaption span { font-size:.75rem; color:var(--muted) }
.ess-chart-axis { display:flex; justify-content:space-between; font:.75rem var(--mono); color:var(--muted); border-bottom:1px solid var(--line); padding-bottom:10px; margin-bottom:19px }
.ess-capacity-row { margin:0 0 22px }
.ess-capacity-row>div:first-child { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:10px }
.ess-capacity-row>div:first-child>span { font-size:.875rem; color:var(--muted) }
.ess-capacity-row strong { font:500 2.35rem/1 var(--display); letter-spacing:-.03em }
.ess-capacity-row strong small { font:400 .875rem var(--mono); letter-spacing:0 }
.ess-capacity-track { background:#e8ebe4; height:22px; background-image:linear-gradient(90deg,transparent calc(100% - 1px),#ced3c6 0); background-size:33.333% 100% }
.ess-capacity-track>span { display:block; width:var(--capacity-width); height:100%; background:#4d5451 }
.ess-capacity-row.current .ess-capacity-track>span { background:var(--accent) }
.ess-chart-callout { font-size:.875rem; margin:6px 0 0; color:var(--muted) }
.ess-chart-callout b { color:var(--ink); font-weight:600; margin-right:8px }

/* Technical section: quiet grid, high contrast, no decorative cards */
.why-section { background:var(--ink); color:#f4f5f0; --line:var(--dark-line); --muted:#b0b5b1 }
.why-section .eyebrow { color:#c1c6c1 }
.why-section .home-stage::before { background:var(--accent) }
.architecture { border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin-bottom:38px }
.architecture-flow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) }
.architecture-flow article { padding:20px 30px 34px; min-width:0 }
.architecture-flow article:first-child { padding-left:0 }
.architecture-flow article:last-child { padding-right:0 }
.architecture-flow article+article { border-left:1px solid var(--line) }
.architecture-diagram { margin-bottom:24px; padding:26px 5px; background-image:radial-gradient(#ffffff26 .7px,transparent .7px); background-size:14px 14px }
.architecture-diagram svg { width:100%; height:150px }
.diagram-line { fill:none; stroke:#bdc5bc; stroke-width:1.5 }
.diagram-node { fill:var(--accent) }
.diagram-module { fill:#c8e53b33; stroke:var(--accent); stroke-width:1 }
.diagram-label { fill:#dce2d6; text-anchor:middle; font:9px var(--mono) }
.step-number { color:#b4bbb2; display:block; margin-bottom:14px }
.architecture-flow h3 { font-size:clamp(1.55rem,2.3vw,2.3rem); margin:0 }
.home-technology-details { border-bottom:1px solid var(--line) }
.compact-details { border-top:1px solid var(--line) }
.compact-details>summary,.contact-brief>summary { list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:24px; padding:21px 0; font-size:1rem; font-weight:450; min-height:65px }
.compact-details>summary::-webkit-details-marker,.contact-brief>summary::-webkit-details-marker { display:none }
.compact-details>summary::after,.contact-brief>summary::after { content:'+'; font:400 1.45rem/1 var(--mono); flex:none }
.compact-details[open]>summary::after,.contact-brief[open]>summary::after { content:'−' }
.compact-details>summary:hover { color:#708500 }
.why-section>.home-technology-details>.compact-details>summary:hover { color:var(--accent) }
.compact-details-body { padding:12px 0 28px; min-width:0 }
.home-detail>.compact-details-body>.section { padding:32px; background:var(--soft); color:var(--ink); --line:#ccd1cb; --muted:#626767 }
.home-detail>.compact-details-body>.section .mini { color:#626767 }
.home-detail .detail-title { font-size:1.7rem; margin-bottom:28px }
.intro-grid { display:flex; justify-content:space-between; gap:32px; margin-bottom:32px }
.intro-grid h2 { font-size:clamp(2rem,3.5vw,3.3rem) }
.intro-grid>p { color:var(--muted); font-size:.875rem; margin:0 }
.compact-details-body .compact-details>summary { font-size:.875rem }

/* ESS evidence and explorable project requirements */
.ess-market { display:grid; grid-template-columns:1fr 1fr; gap:30px 42px; padding:28px; background:#fff; border:1px solid var(--line) }
.ess-market-intro h3 { font-size:2.1rem }
.ess-growth { display:flex; gap:22px; align-items:center }
.ess-growth strong { font:500 5.8rem/1 var(--display); letter-spacing:-.06em }
.ess-growth strong span { font-size:2.5rem }
.ess-growth p { font-size:.875rem; max-width:190px; color:var(--muted); margin:0 }
.ess-planned { border-left:1px solid var(--line); padding-left:32px }
.ess-planned>strong { display:block; font:500 4.3rem/1 var(--display); letter-spacing:-.04em; margin:12px 0 }
.ess-planned>strong small { font:400 1.2rem var(--mono); letter-spacing:0 }
.ess-planned>p { font-size:.875rem; color:var(--muted) }
.ess-plan-segments { display:flex; gap:3px; height:37px }
.ess-plan-segments span { display:flex; justify-content:center; align-items:center; background:#2e3432; color:white; font:.875rem var(--mono) }
.ess-plan-segments span:nth-child(2) { background:var(--accent); color:var(--ink) }
.ess-plan-labels { display:grid; grid-template-columns:14fr 26fr 14fr; margin-top:9px; font:.75rem var(--mono); text-align:center }
.ess-data-disclosure { grid-column:1/-1 }
.ess-source,.ess-boundary,.ess-system-note,.comparison-note,.chart-note,.data-sources { font-size:.75rem; line-height:1.7; color:var(--muted); margin:0 }
.ess-source a,.ess-system-note a,.data-sources a,.comparison-note a { text-decoration:underline; text-underline-offset:3px }
.ess-connection,.ess-system,.ess-investment { margin-top:48px }
.ess-subhead h3 { font-size:clamp(2rem,3vw,2.8rem); margin-bottom:25px }
.ess-bridge { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--line); border-bottom:1px solid var(--line) }
.ess-bridge>article { padding:28px 22px; min-width:0 }
.ess-bridge>article:first-child { padding-left:0 }
.ess-bridge>article+article { border-left:1px solid var(--line) }
.ess-bridge h4 { margin-bottom:16px; font-size:1.8rem }
.ess-bridge p { font-size:.875rem; color:var(--muted) }
.ess-oem>a { font-size:.75rem; text-decoration:underline; text-underline-offset:4px }
.ess-tech-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px 12px; margin:25px 0 }
.ess-tech-grid>span { font-size:.75rem; color:var(--muted); line-height:1.5 }
.ess-tech-grid b { display:block; font:500 1.05rem var(--mono); margin-bottom:6px; color:var(--ink) }
.ess-hypercell { background:#e5ebd2 }
.ess-hypercell ol { list-style:none; margin:24px 0 0; padding:0 }
.ess-hypercell li { display:flex; gap:15px; align-items:baseline; padding:12px 0; border-top:1px solid #c9d1b5; font-size:.875rem }
.ess-hypercell li b { font:.75rem var(--mono); color:#606948 }
.ess-demand>div { padding:17px 0; border-top:1px solid var(--line); font-size:.875rem }
.ess-demand b { font-weight:500 }
.ess-boundary { margin:17px 0 30px }
.ess-system { margin-top:15px }
.ess-system-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:32px }
.ess-architecture { padding:26px; background:#fff; border:1px solid var(--line); align-self:start }
.ess-architecture figcaption { font-size:.875rem; margin-bottom:26px }
.ess-architecture figcaption span { display:block; font-size:.75rem; color:var(--muted); margin-top:5px }
.ess-control { border:1px solid #a4b163; padding:15px; background:#f1f5dd; text-align:center; margin-bottom:24px }
.ess-control b { font:500 1rem var(--mono); display:block }
.ess-control span { font-size:.75rem }
.ess-power-flow { display:grid; grid-template-columns:1fr 18px 1fr 18px 1fr; align-items:stretch; gap:5px }
.ess-power-flow>div { display:flex; flex-direction:column; align-items:center; text-align:center; border:1px solid var(--line); padding:15px 7px; min-width:0 }
.ess-power-flow b { font-size:.875rem; font-weight:600 }
.ess-power-flow div>span { font-size:.75rem; margin:8px 0 }
.ess-power-flow small { font-size:.75rem; color:var(--muted); line-height:1.4 }
.ess-flow-link { align-self:center; text-align:center }
.ess-architecture>p { margin:23px 0 0; border-top:1px solid var(--line); padding-top:15px; color:var(--muted); font-size:.75rem; text-align:center }
.ess-usecases,.metric-switch { display:flex; flex-wrap:wrap; border:1px solid var(--line); width:fit-content }
.ess-usecases { margin-bottom:25px }
.ess-usecases button,.metric-switch button { flex:1; padding:11px 13px; border:0; background:transparent; font-size:.875rem; color:var(--ink); min-height:44px }
.ess-usecases button.selected,.metric-switch button.selected { background:var(--ink); color:white }
.ess-usecases button:hover:not(.selected),.metric-switch button:hover:not(.selected) { background:#e1e6da }
.ess-project-selector h4 { font-size:2.3rem; margin-bottom:18px }
.ess-project-selector p,.ess-project-selector li { font-size:.875rem; color:var(--muted) }
.ess-project-selector ul { padding-left:19px; margin:20px 0 25px }
.ess-project-selector li { margin-bottom:7px }
.ess-system-note { margin-top:22px }
.ess-investment { border-top:1px solid var(--line); padding-top:32px; display:grid; grid-template-columns:1fr 2fr; gap:28px }
.ess-investment-title h3 { font-size:2.7rem }
.ess-growth-paths { display:grid; gap:18px }
.ess-growth-paths>a { border-bottom:1px solid var(--line); padding:0 0 20px }
.ess-growth-paths>a:hover strong { text-decoration:underline; text-underline-offset:5px }
.ess-growth-paths span { display:block; font:.75rem var(--mono); color:var(--muted); margin-bottom:10px }
.ess-growth-paths strong { display:block; font:500 1.4rem/1.3 var(--display); margin-bottom:10px }
.ess-growth-paths small { font-size:.875rem; color:var(--muted) }
.ess-investment-bottom { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:22px }
.ess-investment-bottom p { font-size:.75rem; color:var(--muted); margin:0 }

/* Published cell data, research schematics and manufacturing roadmap */
.cell-dashboard { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(0,1fr); gap:28px }
.cell-comparison { background:#fff; padding:28px; border:1px solid var(--line) }
.chart-heading { display:flex; align-items:start; justify-content:space-between; gap:22px; margin-bottom:30px }
.chart-heading h3 { font-size:2.5rem; margin:0 }
.metric-switch button { font-size:.875rem; padding:10px 12px }
.metric-switch button span { font-size:.75rem; opacity:.7; display:block }
.chart-axis { display:flex; justify-content:space-between; margin:0 80px 13px 92px; font:.75rem var(--mono); color:var(--muted) }
.chart-row { display:grid; grid-template-columns:80px minmax(0,1fr) 68px; align-items:center; gap:12px; margin-bottom:22px }
.chart-label strong { font:500 1.5rem var(--display) }
.chart-label span { display:block; font-size:.75rem; margin-top:4px; color:var(--muted); overflow-wrap:anywhere }
.bar-track { height:35px; background:#eceee7 }
.data-bar { width:var(--bar-size); height:100%; transition:width .4s ease }
.bar-30 { background:#515b54 }
.bar-40 { background:var(--accent) }
.bar-value { font:500 1.5rem var(--display); white-space:nowrap }
.bar-value small { font:.75rem var(--mono) }
.voltage-baseline { display:flex; gap:22px; align-items:center; border-top:1px solid var(--line); padding-top:22px; margin-top:28px }
.voltage-baseline>strong { font:500 2.6rem var(--display); letter-spacing:-.04em }
.voltage-baseline>strong span { font:1rem var(--mono) }
.voltage-baseline>span { font-size:.75rem; color:var(--muted) }
.chart-note { margin-top:20px }
.cell-spotlight { display:flex; flex-direction:column; justify-content:space-between; gap:28px; background:#242925; color:#f6f7f1; padding:30px }
.cell-maker { color:#bdc6b3 }
.cell-spotlight h3 { font-size:4.6rem; margin:0 0 8px }
.cell-spotlight p { font-size:.75rem; color:#bdc6b3; margin:0 }
.spotlight-profile>span { font:400 2.9rem var(--display) }
.spotlight-profile hr { border:0; border-top:1px solid #4b5448; margin:18px 0 }
.spotlight-profile>strong { font:400 1.8rem var(--display); display:block; margin-bottom:7px }
.cell-spotlight>a { font-size:.875rem; text-decoration:underline; text-underline-offset:5px }
.cell-bottom { display:flex; align-items:flex-start; justify-content:space-between; gap:30px; margin-top:25px }
.cell-bottom>div { flex:1; min-width:0 }
.cell-bottom p { color:var(--muted); font-size:.75rem; margin-bottom:15px }
.cell-bottom>.button { flex:none }
.research-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px }
.research-grid article { min-width:0 }
.research-figure { padding:15px; background:#fff; border:1px solid var(--line); margin-bottom:22px }
.research-figure svg { width:100%; height:auto }
.research-grid h3 { font-size:1.65rem; margin-bottom:12px }
.research-grid p { font-size:.875rem; color:var(--muted) }
.electrode { fill:#626f60 }
.polymer-path { stroke:#8d9d7d; stroke-width:2; fill:none }
.ion { fill:var(--accent); stroke:#687925; stroke-width:1 }
.ion-label { fill:#29351d; text-anchor:middle; font:13px var(--mono) }
.pore-wall { fill:#d0d8c2; stroke:#7d8b6e; stroke-width:1 }
.charge-label { fill:#516043; font:16px var(--mono) }
.ion-route { stroke:#5d7250; stroke-width:2; fill:none }
.retained-particle { fill:#6f7e63 }
.research-bottom { display:flex; justify-content:space-between; align-items:baseline; gap:20px; border-top:1px solid var(--line); padding-top:20px; margin-top:20px; color:var(--muted); font-size:.75rem }
.research-bottom a { text-decoration:underline; text-underline-offset:4px }
.trf-visual { display:grid; grid-template-columns:1fr 1.2fr; gap:40px; border-top:1px solid var(--line); margin-top:35px; padding-top:32px }
.trf-overview h3 { font-size:2.5rem; margin-bottom:20px }
.trf-stage { font-size:.875rem; color:var(--muted) }
.trf-functions>div { display:flex; gap:20px; align-items:center; padding:17px 20px; border-bottom:2px solid var(--soft); background:#e1e8d6; font-size:.875rem }
.trf-functions>div:nth-of-type(2) { background:#d2dcc0 }
.trf-functions>div:nth-of-type(3) { background:#c5d59c }
.trf-functions>div:nth-of-type(4) { background:#b4c881 }
.trf-functions b { font:.75rem var(--mono) }
.trf-functions>p { color:var(--muted); font-size:.75rem; margin:13px 0 0 }
.roadmap-panel { display:grid; grid-template-columns:1.4fr 1fr; gap:30px; align-items:center }
.roadmap-panel figure img { width:100%; height:auto }
.roadmap-panel figcaption { font-size:.75rem; color:var(--muted); margin-top:12px }
.roadmap-copy h3 { font-size:2.7rem; margin-bottom:22px }
.roadmap-copy ul { list-style:none; padding:0; margin:0 0 20px }
.roadmap-copy li { border-top:1px solid var(--line); padding:11px 0; font-size:.875rem }
.roadmap-copy>p { color:var(--muted); font-size:.75rem; margin:0 }
.comparison-scroll { overflow-x:auto }
.positioning-table { border-collapse:collapse; width:100%; min-width:550px; text-align:left; font-size:.875rem }
.positioning-table th,.positioning-table td { border-bottom:1px solid var(--line); padding:20px 16px; vertical-align:top }
.positioning-table thead th { font:.75rem var(--mono); color:var(--muted); text-transform:uppercase }
.positioning-table tbody th { font-weight:500 }
.positioning-table tbody a { text-decoration:underline; text-underline-offset:4px }
.hypercell-row { background:var(--accent) }
.positioning .compact-details { margin-top:24px }

/* Applications: generous images and a horizontal aerospace panel */
.home-application-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px }
.home-app-card { display:block; position:relative; min-width:0; overflow:hidden }
.home-app-card>img { width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; transition:filter .3s }
.home-app-card:hover>img { filter:brightness(1.07) }
.home-image-caption { display:block; font-size:.75rem; color:var(--muted); margin-top:10px }
.home-app-card>div { padding:22px 0 24px; border-bottom:1px solid var(--line) }
.application-index { display:flex; justify-content:space-between; align-items:center; color:var(--muted); margin-bottom:20px }
.application-index i { font:normal 1.5rem var(--body); color:var(--ink); transition:transform .2s }
.home-app-card:hover .application-index i { transform:translate(3px,-3px) }
.home-app-card h3 { font-size:clamp(2rem,3.2vw,3rem); margin-bottom:12px }
.home-app-card p { color:var(--muted); font-size:.875rem; margin:0 }
.home-aerospace { grid-column:1/-1; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:16px 50px; padding:44px; background:var(--ink); color:var(--paper); align-items:start }
.home-aerospace .mini { grid-column:1; color:#bdc4bb; margin:0 0 10px }
.home-aerospace h3 { grid-column:1; grid-row:2/5; font-size:clamp(2.5rem,4.7vw,4.6rem); margin:0 }
.home-aerospace h3 em { color:var(--accent) }
.home-mission { grid-column:2; grid-row:2; display:flex; flex-wrap:wrap; gap:9px; margin-top:6px }
.home-mission span { font:.875rem var(--mono); padding:10px 14px; border:1px solid #626a60 }
.home-aerospace>p { grid-column:2; grid-row:3; font-size:.75rem; color:#bec5b9; margin:0 }
.home-aerospace>.under-link { grid-column:2; grid-row:4; width:fit-content; margin-top:10px }
.home-applications>.home-detail { margin-top:34px; border-bottom:1px solid var(--line) }
.market-evidence { display:grid; grid-template-columns:1.25fr 1fr .7fr; gap:34px; padding:32px; background:var(--soft); align-items:center }
.market-framing h3 { font-size:2rem }
.market-framing p { color:var(--muted); font-size:.875rem }
.market-framing>a { font-size:.75rem; text-decoration:underline; text-underline-offset:4px }
.market-stats { display:grid; gap:28px }
.market-stats strong { font:500 4rem/1 var(--display); letter-spacing:-.05em }
.market-stats strong>span { font-size:2rem }
.market-stats p { color:var(--muted); font-size:.75rem; margin:9px 0 0 }
.market-donut { text-align:center }
.market-donut svg { width:180px; height:180px; margin:auto }
.donut-track { fill:none; stroke:#d8ddcf; stroke-width:14 }
.donut-value { fill:none; stroke:#6b8228; stroke-width:14 }
.donut-number { font:500 38px var(--display); fill:var(--ink); text-anchor:middle }
.donut-label { font:10px var(--mono); fill:var(--muted); text-anchor:middle }
.market-donut figcaption { font-size:.875rem; margin-top:10px }
.market-donut figcaption span { display:block; font-size:.75rem; color:var(--muted); margin-top:5px }
.market-note { grid-column:1/-1; color:var(--muted); font-size:.75rem; margin:0; padding-top:18px; border-top:1px solid var(--line) }

/* Small, uncropped portraits and the conversation footer */
.home-company { background:var(--soft); padding-bottom:0 }
.home-people-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px 36px; padding-bottom:75px }
.home-people-grid>article { display:grid; grid-template-columns:70px minmax(0,1fr); gap:18px; align-items:start; border-top:1px solid #c9cec7; padding-top:24px; min-width:0 }
.home-people-grid img { width:70px; height:94px; object-fit:contain; object-position:center; background:transparent }
.person-info { min-width:0 }
.person-info h3 { font-size:1.4rem; margin:1px 0 10px }
.role { font-size:.75rem; color:#515b4e; display:block; line-height:1.6; margin-bottom:11px }
.person-info p { font-size:.875rem; color:var(--muted); margin:0 0 7px; line-height:1.55 }
.person-info .affiliation { color:#343d32 }
.person-info .under-link { font-size:.875rem; margin-top:8px }
.contact { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:90px; margin:0 calc(-1 * var(--page-gutter)); padding:76px var(--page-gutter); background:var(--ink); color:var(--paper); --line:#4b514a; --muted:#b4bcb0 }
.contact .eyebrow { color:#b8c1b2; margin-bottom:26px }
.contact>div>h3 { font-size:clamp(3rem,5.5vw,5.3rem); margin-bottom:30px }
.email { display:inline-block; font-size:clamp(1rem,1.6vw,1.4rem); border-bottom:1px solid #707d62; padding-bottom:7px; margin:0 0 28px; overflow-wrap:anywhere }
.email:hover { color:var(--accent) }
address { font-size:.875rem; font-style:normal; color:#c4ccc0; line-height:1.8 }
address strong { font-weight:500; color:var(--paper) }
.contact .muted { font-size:.75rem; color:var(--muted); margin:18px 0 0 }
.contact-brief { align-self:start; margin-top:45px; border-top:1px solid #727c65; border-bottom:1px solid #727c65 }
.contact-brief>summary { min-height:78px; font-size:1.1rem; line-height:1.5 }
.contact-brief>summary::after { color:var(--accent) }
.contact form { padding:20px 0 30px }
.contact form h3 { font-size:1.7rem; margin-bottom:12px }
.form-note { font-size:.875rem; color:var(--muted); margin:0 0 25px }
label { display:block; font-size:.875rem; margin:18px 0 8px; color:#d4dccd }
input,select,textarea { display:block; width:100%; min-height:48px; border:1px solid #5a6353; border-radius:0; padding:12px 13px; background:#242925; color:#f6f7f1; font-size:1rem }
input::placeholder,textarea::placeholder { color:#a8b1a0; opacity:1 }
textarea { resize:vertical }
form .button { width:100%; margin-top:22px }
#form-status { font-size:.75rem; color:var(--muted); margin:15px 0 0 }
footer { display:flex; align-items:center; justify-content:space-between; gap:32px; padding:30px var(--page-gutter); border-top:1px solid var(--line); font-size:.75rem; background:var(--paper) }
footer .brand { width:190px }
footer p { margin:0; color:var(--muted) }
footer>a:last-child { font-size:.875rem; text-decoration:underline; text-underline-offset:5px }

/* Responsive proportions preserve the same hierarchy at every width. */
@media (min-width:1600px) {
  .hero h1 { font-size:9.4rem }
  .business-card { gap:65px }
}
@media (max-width:1100px) {
  nav { gap:20px }
  header .brand { width:195px }
  .hero-content { grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr); gap:30px }
  .hero h1 { font-size:clamp(4.5rem,9vw,7rem) }
  .home-section-head { grid-template-columns:minmax(160px,.85fr) minmax(0,2fr) }
  .business-card { gap:30px }
  .business-card figure img { min-height:330px }
  .business-index { margin-bottom:28px }
  .business-actions { gap:20px }
  .home-market-pulse { gap:40px }
  .home-people-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 40px }
  .ess-system-grid { grid-template-columns:1fr }
  .ess-project-selector { max-width:650px }
  .ess-architecture { padding:28px }
  .ess-power-flow { grid-template-columns:1fr 30px 1fr 30px 1fr }
  .cell-dashboard { grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:20px }
  .cell-comparison { padding:22px }
  .chart-heading { flex-direction:column; gap:20px }
  .contact { gap:50px }
  .market-evidence { grid-template-columns:1fr 1fr; gap:28px }
  .market-framing { grid-column:1/-1 }
  .market-stats { display:flex; gap:32px }
  .roadmap-panel { grid-template-columns:1.2fr 1fr }
  .roadmap-copy h3 { font-size:2.3rem }
}
@media (max-width:800px) {
  html { scroll-padding-top:90px }
  header { min-height:76px; padding-top:15px; padding-bottom:15px }
  header .brand { width:186px }
  .menu { display:block }
  nav { display:none; position:absolute; top:100%; left:0; right:0; background:var(--paper); padding:18px var(--page-gutter) 28px; border-bottom:1px solid var(--line); flex-direction:column; align-items:stretch; gap:4px }
  nav.open { display:flex }
  nav>a { padding:13px 0; font-size:1rem }
  nav>.nav-cta { margin-top:10px; padding:14px 18px }
  .section { padding-top:76px; padding-bottom:76px }
  .home-hero { padding-top:45px }
  .hero-content { grid-template-columns:1fr; gap:30px; padding-bottom:35px }
  .hero h1 { font-size:clamp(4.5rem,12.5vw,7rem) }
  .hero-heading .eyebrow { margin-bottom:22px }
  .hero-summary { max-width:none; width:100%; justify-self:start; display:flex; gap:35px; align-items:center; justify-content:space-between; padding:0 }
  .hero-intro { font-size:1rem; margin:0 }
  .actions { flex-direction:column; align-items:flex-start; gap:17px }
  .home-hero-visual img { height:auto; min-height:290px; object-fit:contain }
  .hero-image-label { top:16px; left:18px; right:18px; font-size:.75rem }
  .hero-image-label span:last-child { display:none }
  .home-hero-visual figcaption { bottom:13px; left:14px; font-size:.75rem }
  .home-section-head { grid-template-columns:1fr; gap:23px; margin-bottom:38px }
  .home-section-head .eyebrow { margin:0 }
  .home-section-head>.home-stage { grid-column:1; margin:0 }
  .business-grid { gap:44px }
  .business-card,.battery-business { grid-template-columns:1.3fr 1fr; gap:25px }
  .battery-business figure { grid-column:1; grid-row:1 }
  .battery-business .business-content { grid-column:2; grid-row:1 }
  .business-content { padding:12px 0 }
  .business-index { margin-bottom:20px }
  .business-content h3 { font-size:2.7rem }
  .business-content>p { font-size:1rem; margin-bottom:22px }
  .business-content .home-stage { font-size:.875rem; margin-bottom:14px }
  .business-actions { align-items:flex-start; flex-direction:column; gap:18px }
  .business-card figure img { min-height:365px; aspect-ratio:auto }
  .home-market-pulse { grid-template-columns:1fr; gap:30px; margin-top:44px; padding-top:35px }
  .home-market-caption h3 { margin:12px 0; font-size:2.2rem }
  .home-market-caption p { max-width:none; margin:0 0 10px }
  .architecture-flow article { padding:15px 18px 25px }
  .architecture-diagram { padding:18px 0; margin-bottom:20px }
  .architecture-diagram svg { height:120px }
  .step-number { font-size:.75rem; letter-spacing:0 }
  .architecture-flow h3 { font-size:1.6rem }
  .home-detail>.compact-details-body>.section { padding:25px }
  .ess-market { padding:22px; gap:25px }
  .ess-growth { flex-wrap:wrap; gap:15px }
  .ess-planned { padding-left:23px }
  .ess-bridge { grid-template-columns:1fr }
  .ess-bridge>article,.ess-bridge>article:first-child { padding:26px }
  .ess-bridge>article+article { border-left:0; border-top:1px solid var(--line) }
  .ess-tech-grid { grid-template-columns:repeat(4,minmax(0,1fr)) }
  .ess-investment { grid-template-columns:1fr }
  .ess-investment-title h3 br { display:none }
  .cell-dashboard { grid-template-columns:1fr }
  .chart-heading { flex-direction:row }
  .cell-spotlight { display:grid; grid-template-columns:1fr 1fr }
  .cell-maker { grid-column:1/-1 }
  .cell-spotlight>a { grid-column:1/-1 }
  .cell-spotlight h3 { font-size:4rem }
  .spotlight-profile>span { font-size:2rem }
  .cell-bottom { flex-direction:column; gap:15px }
  .cell-bottom>div { width:100% }
  .research-grid { grid-template-columns:1fr }
  .research-grid article { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:0 22px; align-content:start }
  .research-figure { grid-column:1; grid-row:1/3; margin:0 0 10px }
  .research-grid h3 { grid-column:2; margin-top:12px }
  .research-grid p { grid-column:2 }
  .intro-grid { flex-direction:column; gap:20px }
  .trf-visual { grid-template-columns:1fr; gap:25px }
  .roadmap-panel { grid-template-columns:1fr }
  .roadmap-copy { padding-top:8px }
  .home-application-grid { gap:28px 24px }
  .home-aerospace { padding:32px; gap:18px 30px }
  .home-mission { gap:7px }
  .home-mission span { padding:8px 10px }
  .market-evidence { padding:25px }
  .market-stats { flex-direction:column; gap:20px }
  .home-company { padding-bottom:0 }
  .home-people-grid { padding-bottom:56px; gap:30px }
  .home-people-grid>article { gap:15px; grid-template-columns:64px minmax(0,1fr) }
  .home-people-grid img { width:64px; height:86px }
  .person-info h3 { font-size:1.3rem }
  .contact { padding-top:56px; padding-bottom:56px; grid-template-columns:1fr; gap:35px }
  .contact-brief { margin-top:0 }
  footer { flex-wrap:wrap; gap:24px }
  footer p { order:3; width:100% }
}
@media (max-width:560px) {
  :root { --gutter:22px }
  h2 { font-size:2.65rem }
  .section { padding-top:60px; padding-bottom:60px }
  .home-hero { padding-top:35px }
  .hero h1 { font-size:clamp(3.4rem,13vw,4.8rem); line-height:.96; letter-spacing:-.045em }
  .hero-summary { display:block }
  .hero-intro { margin-bottom:22px }
  .actions { flex-direction:row; align-items:center; gap:20px }
  .hero .button { padding:13px 15px; gap:20px }
  .home-hero-visual { margin:0 calc(-1 * var(--page-gutter)) }
  .home-hero-visual img { min-height:265px }
  .home-hero-visual figcaption { left:16px; bottom:12px; right:16px; width:fit-content }
  .hero-image-label { top:15px; left:22px }
  .business-card,.battery-business { grid-template-columns:1fr; gap:0; padding-top:16px }
  .business-card figure,.battery-business figure { grid-column:1; grid-row:1 }
  .business-card figure img { height:auto; min-height:0; aspect-ratio:3/2 }
  .business-card .business-content,.battery-business .business-content { grid-column:1; grid-row:2; padding:27px 0 0 }
  .business-index { margin-bottom:20px }
  .business-content h3 { font-size:3rem; max-width:none; margin-bottom:15px }
  .business-content>p { max-width:320px }
  .business-actions { flex-direction:row; align-items:center; flex-wrap:wrap; gap:22px }
  .home-market-pulse { gap:25px; padding-bottom:32px }
  .ess-capacity-chart figcaption { flex-direction:column; gap:3px }
  .ess-capacity-row strong { font-size:2rem }
  .ess-capacity-track { height:19px }
  .architecture { margin-bottom:22px }
  .architecture-flow { grid-template-columns:1fr }
  .architecture-flow article,.architecture-flow article:first-child,.architecture-flow article:last-child { display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1fr); align-items:center; column-gap:24px; padding:22px 0 }
  .architecture-flow article+article { border-left:0; border-top:1px solid var(--line) }
  .architecture-diagram { grid-column:1; grid-row:1/3; margin:0; padding:0 }
  .architecture-diagram svg { height:105px }
  .step-number { grid-column:2; align-self:end; margin-bottom:12px }
  .architecture-flow h3 { grid-column:2; align-self:start; font-size:1.75rem }
  .compact-details>summary { font-size:.9375rem; gap:20px; padding:19px 0 }
  .home-detail>.compact-details-body>.section { padding:24px 18px; margin:0 -8px }
  .ess-market { grid-template-columns:1fr; padding:20px; gap:24px }
  .ess-growth { flex-wrap:nowrap }
  .ess-growth strong { font-size:4.8rem }
  .ess-growth p { font-size:.875rem }
  .ess-planned { border-left:0; border-top:1px solid var(--line); padding:25px 0 0 }
  .ess-planned>strong { font-size:3.8rem }
  .ess-bridge>article,.ess-bridge>article:first-child { padding:24px 20px }
  .ess-tech-grid { grid-template-columns:1fr 1fr }
  .ess-architecture { padding:19px 14px }
  .ess-power-flow { grid-template-columns:1fr; gap:9px }
  .ess-power-flow>div { padding:15px 12px }
  .ess-power-flow div>span { margin:4px 0 }
  .ess-flow-link { transform:rotate(90deg); line-height:1; padding:3px }
  .ess-usecases { width:100% }
  .ess-usecases button { padding:10px 9px; font-size:.875rem }
  .ess-investment-bottom { align-items:flex-start; flex-direction:column; gap:20px }
  .cell-comparison { padding:20px 16px }
  .chart-heading { flex-direction:column; gap:18px }
  .chart-heading h3 { font-size:2.2rem }
  .chart-row { grid-template-columns:61px minmax(0,1fr) 57px; gap:8px; margin-bottom:22px }
  .chart-label span { font-size:.75rem; line-height:1.3 }
  .chart-axis { margin-left:69px; margin-right:65px }
  .bar-value { font-size:1.25rem }
  .bar-value small { font-size:.75rem }
  .bar-track { height:29px }
  .cell-spotlight { padding:24px; gap:25px 18px }
  .cell-spotlight h3 { font-size:3rem }
  .spotlight-profile>strong { font-size:1.5rem }
  .research-grid article { display:block }
  .research-figure { margin-bottom:18px }
  .research-grid h3 { margin-top:0 }
  .research-grid p { margin-bottom:15px }
  .research-bottom { flex-direction:column; gap:12px }
  .trf-overview h3 { font-size:2.3rem }
  .trf-functions>div { gap:14px; padding:15px }
  .home-application-grid { grid-template-columns:1fr; gap:28px }
  .home-app-card>div { padding:20px 0 25px }
  .home-app-card h3 { font-size:2.4rem }
  .application-index { margin-bottom:18px }
  .home-aerospace { display:flex; flex-direction:column; padding:30px 25px; gap:22px }
  .home-aerospace .mini { margin:0 }
  .home-aerospace h3 { font-size:3.1rem }
  .home-mission { margin-top:4px }
  .home-aerospace>.under-link { margin-top:4px }
  .market-evidence { grid-template-columns:1fr; padding:24px 18px }
  .market-framing { grid-column:1 }
  .market-stats { flex-direction:row; flex-wrap:wrap; gap:24px 30px }
  .market-stats strong { font-size:3.6rem }
  .market-donut svg { width:190px; height:190px }
  .market-note { grid-column:1 }
  .home-company { padding-bottom:0 }
  .home-people-grid { grid-template-columns:1fr; gap:24px; padding-bottom:48px }
  .home-people-grid>article { grid-template-columns:74px minmax(0,1fr); gap:21px; padding-top:21px }
  .home-people-grid img { width:74px; height:99px }
  .person-info h3 { font-size:1.55rem }
  .person-info p { font-size:.875rem }
  .contact { padding-top:48px; padding-bottom:48px; gap:30px }
  .contact>div>h3 { font-size:3.2rem }
  .contact-brief>summary { font-size:1rem }
  footer .brand { width:170px }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto }
  *,*::before,*::after { transition:none!important; animation:none!important }
}


/* Full-page exploration */
[hidden] { display:none!important }
.detail-launch { display:flex; justify-content:space-between; align-items:center; gap:28px; width:100%; min-height:66px; padding:20px 0; text-align:left; border:0; border-top:1px solid var(--line); background:transparent; color:inherit; font-size:1rem; font-weight:450 }
.detail-launch::after { content:'View'; flex:none; font:.75rem/1 var(--mono) }
.detail-launch:hover { color:#708500 }
.why-section .detail-launch:hover { color:var(--accent) }
.contact-invite { align-self:start; padding:26px 0; margin-top:38px; border-top:1px solid #727c65 }
.contact-invite .mini { color:#bdc4b6 }
.contact-invite>p:not(.mini) { font:400 2rem/1.2 var(--display); max-width:320px; margin:20px 0 28px }
.page-content { min-width:0; --line:#d4d7d3; --muted:#626767 }
.page-content>.section { padding:0; background:transparent; color:var(--ink) }
.page-content .business-grid { gap:32px }
.page-content .business-card { gap:32px; padding-top:0; border:0 }
.page-content .business-card figure img { min-height:290px }
.page-content .business-content h3 { font-size:2.9rem }
.page-content .business-index { margin-bottom:20px }
.page-content .home-market-pulse { margin-top:36px; padding-top:32px; gap:35px }
.page-content[data-panel="technology"] .architecture { background:var(--ink); color:var(--paper); --line:#434941; padding:0 26px; margin:0 0 25px }
.page-content .home-people-grid { padding-bottom:20px }
.page-content .home-application-grid { gap:24px }
.page-content .home-aerospace { padding:30px }
.page-content .home-aerospace h3 { font-size:3.2rem }
.page-content .detail-title { font-size:1.6rem; margin:0 0 28px }
.page-content .ess-market { padding:26px }
.page-content .ess-system-grid { grid-template-columns:1fr 1fr }
.page-content .ess-power-flow { grid-template-columns:1fr 18px 1fr 18px 1fr }
.page-content .ess-architecture { padding:20px 16px }
.page-content .ess-bridge>article { padding-right:20px; padding-left:20px }
.page-content .market-evidence { background:var(--soft) }
.page-content .cell-dashboard { grid-template-columns:minmax(0,1.65fr) minmax(0,1fr) }
.page-content .chart-heading { flex-wrap:wrap }
.page-content[data-panel="contact"] { max-width:720px; margin:0 auto }
.page-content #project-form { padding:8px 0 16px }
.page-content #project-form>h3 { font-size:2.5rem }
.page-content .form-note { color:var(--muted) }
@media(max-width:1000px) {
 .page-content .ess-system-grid { grid-template-columns:1fr }
 .page-content .cell-dashboard { grid-template-columns:1fr }
}
@media(max-width:800px) {
 .page-content .business-card { grid-template-columns:1fr; gap:0 }
 .page-content .business-card figure,.page-content .battery-business figure { grid-column:1; grid-row:1 }
 .page-content .business-card .business-content { grid-column:1; grid-row:2; padding:25px 0 10px }
 .page-content .business-card figure img { min-height:0; height:auto; aspect-ratio:3/2 }
 .page-content .business-content h3 { font-size:2.6rem }
 .page-content .business-actions { flex-direction:row; flex-wrap:wrap; align-items:center }
 .page-content .home-market-pulse { grid-template-columns:1fr }
 .contact-invite { margin-top:0 }
}
@media(max-width:560px) {
 .page-content .ess-market { padding:20px }
 .page-content .ess-power-flow { grid-template-columns:1fr }
 .page-content .home-aerospace { padding:28px 22px }
 .page-content .home-aerospace h3 { font-size:2.9rem }
 .page-content[data-panel="technology"] .architecture { padding:0 20px }
 .page-content[data-panel="technology"] .architecture-flow article { gap:16px }
 .page-content[data-panel="technology"] .architecture-flow h3 { font-size:1.55rem }
 .page-content #project-form>h3 { font-size:2.1rem }
}
.page-content label { color:#424c3e }
.page-content input,.page-content select,.page-content textarea { background:white; color:var(--ink); border:1px solid #bdc7b5 }
.page-content #form-status { color:var(--muted) }
.site-header { gap:22px }
.site-header nav { margin-left:auto; gap:23px }
.site-header nav a[aria-current="page"]::after { transform:scaleX(1) }
.header-actions { display:flex; align-items:center; gap:12px; flex:none }
.investor-cta { padding:13px 19px; font-weight:600; border-color:#b5cf33 }
.hero-secondary { background:var(--paper); border-color:var(--ink); color:var(--ink) }
.hero-secondary:hover,.hero-secondary:focus-visible { background:var(--ink); color:var(--paper); border-color:var(--ink) }
.topic-shell { padding:42px var(--page-gutter) 75px; min-height:65vh }
.topic-heading { padding:0 0 44px; border-bottom:1px solid var(--line); margin-bottom:44px }
.topic-heading .eyebrow { margin:0 0 25px; color:var(--muted) }
.topic-heading h1 { font-size:clamp(3rem,5.7vw,5.7rem); margin:0; max-width:1000px }
.back-link { display:inline-block; font-size:.875rem; text-decoration:underline; text-underline-offset:5px; margin-bottom:24px }
.page-content .intro-grid { display:none }
.page-content .detail-title { display:none }
.page-content>.section + .section { margin-top:40px }
.page-content[data-panel="contact"] { max-width:none }
.contact-page-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px }
.contact-page-grid .email { color:var(--ink); font-size:clamp(1.05rem,1.8vw,1.75rem); overflow-wrap:anywhere }
.contact-page-grid address { margin-top:30px; color:var(--muted) }
.contact-page-grid .muted { margin-top:24px; color:var(--muted); font-size:.875rem }
.contact-page-grid #project-form>h3 { font-size:1.9rem }
.validation-path,.production-plan { margin-top:54px; padding-top:35px; border-top:1px solid var(--line) }
.validation-heading { display:flex; justify-content:space-between; gap:28px; align-items:flex-end; margin-bottom:28px }
.validation-heading h2 { font-size:clamp(2.1rem,3.5vw,3rem) }
.validation-heading p,.evidence-note { color:var(--muted); font-size:.75rem; margin:0; line-height:1.6 }
.validation-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); background:var(--ink); color:var(--paper) }
.validation-metrics article { padding:28px; border-right:1px solid #51584a }
.validation-metrics strong { display:block; font:500 4rem/1 var(--display); color:var(--accent); margin-bottom:14px }
.validation-metrics span { font-size:.875rem }
.validation-flow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; padding:0; margin:28px 0 20px; gap:25px }
.validation-flow li { display:flex; flex-direction:column; gap:9px; border-top:2px solid var(--line); padding-top:15px }
.validation-flow b { font:.75rem var(--mono); color:var(--muted) }
.validation-flow span { font-size:1rem }
@media(max-width:1100px) {
 .site-header { flex-wrap:wrap; gap:18px }
 .site-header .header-actions { margin-left:auto }
 .site-header .menu { display:block }
 .site-header nav { display:none; order:3; position:static; width:100%; margin:0; padding:10px 0 6px; border:0; flex-direction:column; align-items:stretch; gap:0 }
 .site-header nav.open { display:flex }
 .site-header nav a { padding:12px 0 }
}
@media(max-width:800px) {
 .contact-page-grid { grid-template-columns:1fr; gap:35px }
 .topic-shell { padding-top:32px }
 .topic-heading { padding-bottom:30px; margin-bottom:30px }
 .validation-heading { flex-direction:column; align-items:flex-start; gap:18px }
}
@media(max-width:560px) {
 .site-header { gap:10px; padding-left:20px; padding-right:20px }
 .site-header .brand { width:140px }
 .header-actions { gap:8px }
 .site-header .investor-cta { padding:11px 12px; font-size:.75rem; min-height:42px }
 .site-header .menu { padding:10px; font-size:.75rem }
 .validation-metrics article { padding:22px 14px }
 .validation-metrics strong { font-size:3.2rem }
 .validation-metrics span { font-size:.75rem }
 .validation-flow { gap:14px }
 .validation-flow span { font-size:.875rem }
 .contact-page-grid .email { font-size:1.2rem }
}
@media(max-width:370px) { .site-header .brand { width:115px }.site-header { padding-left:14px; padding-right:14px; gap:8px }.site-header .investor-cta { padding:10px }.header-actions { gap:6px } }

/* One investor entry per page, prominent in the shared header. */
.site-header .investor-cta { background:#17191a; color:#fdfdfb; border:1px solid transparent; border-radius:999px; box-shadow:none; font-weight:550; padding:13px 21px; gap:11px; white-space:nowrap }
.site-header .investor-cta:hover,.site-header .investor-cta:focus-visible { background:#343a33; color:#fff; box-shadow:none }
.thermal-section .trf-visual { margin-top:0; border-top:0; padding-top:0 }

/* Quiet brand accent, without a second investor call to action. */
.site-header .investor-cta::before { content:''; display:block; width:3px; height:15px; background:var(--accent); border-radius:2px; flex:none }
.home-rd-line { border-top:1px solid var(--line); padding:24px 0 18px; margin-top:28px; display:flex; align-items:baseline; justify-content:space-between; gap:24px }
.home-rd-line .mini { color:var(--accent); margin:0 }
.home-rd-line p { font-size:1rem; margin:0; color:#d4dbcd }
.rd-collaboration { display:grid; grid-template-columns:1fr 1.15fr; gap:48px; align-items:center; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:32px 0; margin-top:38px }
.rd-collaboration h2 { font-size:clamp(2rem,3.2vw,2.7rem); margin-bottom:18px }
.rd-collaboration p { max-width:390px; font-size:1rem; color:var(--muted); margin:0; line-height:1.6 }
.rd-cycle { list-style:none; margin:0; padding:0; display:flex; flex-direction:column }
.rd-cycle li { display:flex; gap:20px; align-items:center; padding:18px 0; border-top:1px solid var(--line) }
.rd-cycle li:first-child { border:0 }
.rd-cycle span { display:flex; align-items:center; justify-content:center; width:33px; height:33px; flex:none; background:var(--ink); color:var(--accent); font:.75rem var(--mono) }
.rd-cycle strong { font-size:1rem; font-weight:500 }
.rd-note { margin-top:30px; border-top:1px solid var(--line); padding-top:25px; display:grid; grid-template-columns:1fr 2fr; gap:36px }
.rd-note p { margin:0; font-size:1rem; max-width:730px; color:var(--muted) }
.business-connection { display:grid; grid-template-columns:.85fr 1.3fr 1fr; gap:32px; align-items:start; padding:32px 0; border-top:1px solid var(--line); margin-top:40px }
.business-connection h2 { font-size:2.4rem }
.business-connection ul { list-style:none; padding:0; margin:0 }
.business-connection li { padding:9px 0; border-bottom:1px solid var(--line); font-size:1rem }
@media(max-width:800px) {
 .home-rd-line { align-items:flex-start; flex-direction:column; gap:12px }
 .rd-collaboration { grid-template-columns:1fr 1fr; gap:30px }
 .rd-note,.business-connection { grid-template-columns:1fr; gap:20px }
}
@media(max-width:560px) {
 .site-header .brand { width:125px }
 .site-header .investor-cta { padding:11px 15px; font-size:.8125rem; gap:9px }
 .rd-collaboration { grid-template-columns:1fr; gap:20px; padding:28px 0 }
 .rd-cycle { gap:0 }
 .home-rd-line p { max-width:280px }
}
@media(max-width:370px) { .site-header .brand { width:105px }.site-header .investor-cta { padding:11px 13px; gap:8px } }
