.investor-page { background:var(--paper) }
.investor-header { position:sticky; top:0 }
.investor-header-actions { display:flex; align-items:center; gap:27px; font-size:.875rem }
.investor-header-actions .button { min-height:44px; padding:12px 18px }
.investor-shell { padding:34px var(--page-gutter) 54px }
.investor-masthead { display:flex; justify-content:space-between; align-items:center; gap:25px; padding-bottom:20px }
.investor-masthead .eyebrow { margin:0 }
.investor-masthead>span { font:.75rem var(--mono); color:var(--muted) }
.investor-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:var(--paper); position:sticky; top:84px; z-index:9 }
.investor-tabs button { display:flex; align-items:center; gap:18px; min-height:66px; padding:16px 20px; border:0; background:transparent; color:#515a4d; text-align:left; font-size:1rem; line-height:1.4 }
.investor-tabs button+button { border-left:1px solid var(--line) }
.investor-tabs button>span { font:.75rem var(--mono); opacity:.7 }
.investor-tabs button[aria-selected="true"] { background:var(--ink); color:var(--paper); box-shadow:inset 0 -3px var(--accent) }
.investor-tabs button:hover:not([aria-selected="true"]) { background:var(--soft) }
.investor-panel { padding-top:38px; outline-offset:10px }
.investor-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:45px; margin-bottom:38px }
.investor-heading h1,.investor-heading>h2 { font-size:clamp(3rem,5.8vw,5.5rem); font-weight:500; margin:0; letter-spacing:-.04em; line-height:.99 }
.investor-heading h1 em { color:#737d6b }
.investor-heading p { color:#596451; font-size:1.1rem; line-height:1.6; margin:0; max-width:360px }
.investor-heading>div>p { margin-bottom:22px }
.investor-heading.compact h2 { font-size:clamp(2.8rem,4.5vw,4.3rem) }
.investor-overview-grid { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(0,1fr); gap:45px }
.engine-visuals { display:grid; grid-template-columns:1fr 1fr; gap:14px; align-content:start }
.engine-visuals figure { position:relative; background:#111b1a; color:#fff; height:355px; overflow:hidden }
.engine-visuals figure::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,#0000 15%,#0d1518dd 100%) }
.engine-visuals img { width:100%; height:100%; object-fit:cover }
.engine-visuals figure:nth-child(2) img { object-position:73% center }
.engine-visuals figcaption { position:absolute; z-index:1; left:24px; right:20px; bottom:27px }
.engine-visuals figcaption>span { display:block; font:.75rem/1.5 var(--mono); color:#d0dcbf; margin-bottom:15px }
.engine-visuals figcaption>strong { display:block; font:500 clamp(1.8rem,2.7vw,2.7rem)/1.05 var(--display); letter-spacing:-.035em; margin-bottom:15px }
.engine-visuals figcaption>small { display:block; font-size:.875rem; line-height:1.5; color:#d2dacb }
.figure-note { grid-column:1/-1; font-size:.75rem; color:var(--muted); margin:0 }
.thesis-list article { border-top:1px solid var(--line); padding:19px 0 18px }
.thesis-list .mini { margin-bottom:9px }
.thesis-list h2 { font-size:1.7rem; margin-bottom:9px }
.thesis-list p { color:var(--muted); font-size:.875rem; line-height:1.6; max-width:380px; margin:0 }
.investor-signals { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:34px; border-top:1px solid var(--line); border-bottom:1px solid var(--line) }
.investor-signals button { display:block; text-align:left; padding:25px 28px; color:var(--ink); background:transparent; border:0 }
.investor-signals button:first-child { padding-left:0 }
.investor-signals button+button { border-left:1px solid var(--line) }
.investor-signals button:hover { background:#f1f4e6 }
.investor-signals .mini { margin-bottom:15px }
.investor-signals strong { display:block; font:500 clamp(2.8rem,4.6vw,4.6rem)/1 var(--display); letter-spacing:-.05em; margin-bottom:11px }
.investor-signals strong small { font-size:.48em; letter-spacing:-.025em }
.investor-signals button>span:last-child { font-size:.875rem; color:var(--muted); line-height:1.5 }
.investor-source { font-size:.75rem; line-height:1.65; color:var(--muted); margin:20px 0 0 }
.investor-source a { text-decoration:underline; text-underline-offset:4px }
.revenue-lanes { display:grid; grid-template-columns:1fr 1fr; gap:24px }
.revenue-lane { border:1px solid var(--line); padding:30px; min-width:0 }
.revenue-lane.commercial { background:#f0f4e2 }
.revenue-lane.engineering { background:var(--ink); color:#fff; --muted:#b7c1ad; --line:#4b5543 }
.lane-head { display:flex; flex-direction:column; gap:8px; margin-bottom:26px }
.lane-head .mini { margin:0 }
.revenue-lane h3 { font-size:clamp(2rem,3.1vw,3rem); margin-bottom:30px }
.model-steps { list-style:none; margin:0 0 26px; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; position:relative }
.model-steps::before { content:''; position:absolute; top:18px; height:1px; left:20px; right:20px; background:var(--line) }
.model-steps li { position:relative; min-width:0 }
.model-steps li>span { width:36px; height:36px; display:flex; align-items:center; justify-content:center; background:var(--ink); border:1px solid var(--line); color:var(--paper); font:.75rem var(--mono); margin-bottom:18px }
.engineering .model-steps li>span { background:#d7e8b1; color:var(--ink) }
.model-steps strong { font:500 1.15rem/1.25 var(--display); display:block; margin-bottom:9px }
.model-steps small { display:block; font-size:.75rem; color:var(--muted); line-height:1.55 }
.revenue-output { padding:22px 0 0; border-top:1px solid var(--line) }
.revenue-output .mini { margin-bottom:12px }
.revenue-output strong { display:block; font:500 1.9rem/1.15 var(--display); letter-spacing:-.025em; margin-bottom:12px }
.revenue-output p { font-size:.875rem; color:var(--muted); margin:0 }
.lane-note { margin:24px 0 0; font-size:.75rem; color:var(--muted); line-height:1.65 }
.execution-map { display:grid; grid-template-columns:1fr 1.6fr; gap:45px; border-top:1px solid var(--line); margin-top:38px; padding-top:32px }
.execution-map h3 { font-size:2.3rem; margin:0 }
.execution-map ol { list-style:none; margin:0; padding:0; display:grid; gap:20px }
.execution-map li { display:flex; gap:20px; align-items:baseline; font-size:1rem }
.execution-map li>b { font:.75rem var(--mono); color:var(--muted) }
.execution-map li small { display:block; font-size:.875rem; color:var(--muted); margin-top:5px }
.market-switch { display:flex; border:1px solid var(--line); align-self:flex-end }
.market-switch button { padding:14px 20px; min-height:48px; border:0; color:var(--ink); background:transparent; font-size:.875rem }
.market-switch button[aria-pressed="true"] { background:var(--ink); color:#fff }
.market-switch button:hover:not([aria-pressed="true"]) { background:var(--soft) }
.market-highlights { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin-bottom:28px }
.market-highlights>div { display:flex; align-items:center; gap:25px; padding:22px 28px }
.market-highlights>div:first-child { padding-left:0 }
.market-highlights>div+div { border-left:1px solid var(--line) }
.market-highlights strong { font:500 clamp(3rem,4.3vw,4.5rem)/1 var(--display); letter-spacing:-.05em; white-space:nowrap }
.market-highlights strong small { font-size:.5em }
.market-highlights p { font-size:.875rem; color:var(--muted); margin:0; line-height:1.55 }
.investor-chart-grid { display:grid; grid-template-columns:1fr 1fr; gap:26px }
.investor-chart { border:1px solid var(--line); padding:28px; min-width:0; display:flex; flex-direction:column; justify-content:space-between }
.investor-chart figcaption { margin-bottom:30px }
.investor-chart .mini { margin-bottom:12px }
.investor-chart h3 { font-size:1.8rem; margin-bottom:10px }
.investor-chart figcaption>span:last-child { font-size:.875rem; color:var(--muted) }
.horizontal-chart { padding:0 0 12px }
.horizontal-axis { display:flex; justify-content:space-between; border-bottom:1px solid var(--line); padding-bottom:10px; font:.75rem var(--mono); color:var(--muted); margin-bottom:23px }
.horizontal-row { margin-bottom:25px }
.horizontal-row>div:first-child { display:flex; justify-content:space-between; align-items:baseline; gap:15px; font-size:.875rem; margin-bottom:13px }
.horizontal-row b { font:500 1.5rem var(--display); letter-spacing:-.02em }
.horizontal-track { height:35px; background:#e8ecdf; background-image:linear-gradient(90deg,transparent calc(100% - 1px),#c7d0bc 0); background-size:33.333333% 100% }
.horizontal-track>span { display:block; width:var(--value); height:100%; background:#56644b }
.horizontal-row.accent .horizontal-track>span { background:var(--accent) }
.chart-footnote { color:var(--muted); font-size:.75rem; line-height:1.6; margin:10px 0 0; min-height:20px }
.vertical-chart { display:grid; grid-template-columns:47px 1fr; gap:12px; margin:0 0 4px }
.vertical-scale { height:206px; display:flex; flex-direction:column; justify-content:space-between; color:var(--muted); font:.75rem var(--mono); padding:0 0 2px }
.vertical-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; background-image:linear-gradient(0deg,#d7ddcd 1px,transparent 1px); background-size:100% 66.666667px; background-position:0 -23px }
.column-track { height:200px; display:flex; align-items:flex-end; justify-content:center }
.column-track>span { width:100%; max-width:90px; height:var(--height); display:flex; align-items:flex-start; justify-content:center; padding-top:13px; background:#56644b; color:white }
.column-track b { font:500 1.5rem var(--display) }
.peak .column-track>span { background:var(--accent); color:var(--ink) }
.vertical-column>span { display:block; text-align:center; padding-top:11px; height:36px; background:var(--paper); font-size:.875rem }
.investor-donut-layout { display:flex; align-items:center; justify-content:center; gap:30px; margin:0 0 15px }
.investor-donut { width:190px; height:190px; flex:none }
.investor-donut .donut-value { stroke:#718c22 }
.donut-legend p { position:relative; padding-left:23px; margin:0 0 23px }
.donut-legend p:last-child { margin:0 }
.legend-square { position:absolute; top:10px; left:0; width:9px; height:9px }
.legend-square.transport { background:#718c22 }
.legend-square.other { background:#d8ddcf }
.donut-legend b { font:500 1.7rem var(--display); display:block }
.donut-legend small { display:block; font-size:.75rem; color:var(--muted); margin-top:5px }
.investor-architecture { background:var(--ink); color:var(--paper); padding:0 28px; --line:#47523f }
.investor-architecture .architecture { margin:0; border:0 }
.advantage-points { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; margin-top:28px }
.advantage-points h3 { font-size:1.7rem; margin-bottom:12px }
.advantage-points p { font-size:.875rem; color:var(--muted); margin:0 }
.investor-comparison { display:grid; grid-template-columns:1fr 1.7fr; gap:45px; border-top:1px solid var(--line); margin-top:38px; padding-top:32px }
.investor-comparison h3 { font-size:2.4rem }
.investor-comparison>div>p { color:var(--muted); font-size:.875rem; max-width:310px }
.investor-comparison>div { min-width:0 }
.investor-comparison .positioning-table { min-width:490px }
.investor-comparison .positioning-table th,.investor-comparison .positioning-table td { padding:15px 12px }
.investor-people { display:grid; grid-template-columns:1fr 1.7fr; gap:45px; border-top:1px solid var(--line); padding-top:30px; margin-top:35px }
.investor-people h3 { font-size:2.1rem }
.investor-people .home-people-grid { grid-template-columns:1fr; gap:20px; padding:0 }
.investor-people .home-people-grid>article { padding-top:18px; grid-template-columns:60px 1fr; gap:20px }
.investor-people .home-people-grid>article:first-child { border:0; padding-top:0 }
.investor-people .home-people-grid img { width:60px; height:80px; object-fit:contain }
.investor-people .person-info h3 { font-size:1.4rem; margin-bottom:8px }
.investor-people .role { margin-bottom:5px }
.investor-people .person-info .under-link { margin-top:3px }
.investor-contact-strip { background:var(--ink); color:var(--paper); padding:40px var(--page-gutter); display:flex; align-items:center; justify-content:space-between; gap:30px }
.investor-contact-strip .mini { color:#bdc8b0; margin-bottom:12px }
.investor-contact-strip h2 { font-size:2.7rem }
.inquiry-dialog { width:min(720px,calc(100vw - 40px)); height:min(820px,calc(100dvh - 50px)); max-width:none; max-height:none; padding:0; overflow:hidden; border:1px solid var(--line); background:var(--paper); color:var(--ink); box-shadow:0 25px 90px #0005 }
.inquiry-dialog .form-note { color:var(--muted) }
.inquiry-dialog form>h3 { font-size:2.1rem }
.inquiry-direct-email { display:inline-block; font-size:.875rem; margin-top:20px; text-decoration:underline; text-underline-offset:4px }
@media(max-width:1100px) {
 .investor-tabs button { gap:12px; padding:15px 17px }
 .investor-overview-grid { gap:30px }
 .engine-visuals figure { height:360px }
 .engine-visuals figcaption { left:20px; right:18px; bottom:23px }
 .engine-visuals figcaption>strong { font-size:2rem }
 .market-highlights>div { flex-direction:column; align-items:flex-start; gap:15px }
 .investor-chart { padding:24px }
 .investor-donut-layout { gap:20px }
 .investor-donut { width:160px; height:160px }
 .revenue-lane { padding:25px }
 .investor-comparison,.investor-people { grid-template-columns:1fr 1.8fr; gap:32px }
}
@media(max-width:800px) {
 .investor-tabs { top:76px }
 .investor-tabs button { font-size:.875rem; min-height:65px; padding:13px 12px; gap:9px }
 .investor-tabs button>span { display:none }
 .investor-heading { align-items:flex-start; gap:28px }
 .investor-heading h1 { font-size:3.7rem }
 .investor-heading p { font-size:1rem }
 .investor-overview-grid { grid-template-columns:1fr; gap:20px }
 .engine-visuals figure { height:330px }
 .engine-visuals figcaption>strong { font-size:2.6rem }
 .thesis-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px }
 .thesis-list h2 { font-size:1.6rem }
 .investor-signals { margin-top:20px }
 .investor-signals button { padding:24px 20px }
 .investor-signals strong { font-size:3.1rem }
 .revenue-lanes { grid-template-columns:1fr }
 .revenue-lane h3 br { display:none }
 .execution-map { gap:30px }
 .investor-chart-grid { grid-template-columns:1fr }
 .investor-chart { padding:28px }
 .vertical-columns { gap:40px }
 .investor-donut { width:200px; height:200px }
 .investor-donut-layout { gap:40px }
 .investor-comparison { grid-template-columns:1fr; gap:10px }
 .investor-comparison>div>p { max-width:none }
 .investor-contact-strip { flex-direction:column; align-items:flex-start; gap:25px }
 .investor-contact-strip h2 { font-size:2.3rem }
}
@media(max-width:560px) {
 .investor-header-actions { gap:15px; font-size:.875rem }
 .investor-header .brand { width:155px }
 .investor-header { gap:14px }
 .investor-header-actions>.button { display:none }
 .investor-shell { padding-top:25px; padding-bottom:40px }
 .investor-masthead { align-items:flex-start; gap:15px }
 .investor-masthead>span { text-align:right }
 .investor-masthead .eyebrow { font-size:.75rem; max-width:185px }
 .investor-tabs { margin:0 calc(-1 * var(--page-gutter)); top:76px }
 .investor-tabs button { justify-content:center; text-align:center; padding:12px 9px; font-size:.875rem }
 .investor-panel { padding-top:28px }
 .investor-heading { flex-direction:column; gap:24px; margin-bottom:28px }
 .investor-heading h1 { font-size:3.5rem }
 .investor-heading.compact h2 { font-size:2.9rem }
 .investor-heading>div>p { margin-bottom:20px }
 .engine-visuals { gap:10px }
 .engine-visuals figure { height:295px }
 .engine-visuals figcaption { left:15px; right:12px; bottom:21px }
 .engine-visuals figcaption>strong { font-size:1.85rem }
 .engine-visuals figcaption>span { font-size:.75rem; margin-bottom:13px }
 .engine-visuals figcaption>small { font-size:.875rem }
 .thesis-list { grid-template-columns:1fr; gap:0 }
 .thesis-list article { padding:20px 0 }
 .thesis-list h2 { font-size:1.75rem }
 .investor-signals { grid-template-columns:1fr; margin-top:12px }
 .investor-signals button,.investor-signals button:first-child { padding:23px 0 }
 .investor-signals button+button { border-left:0; border-top:1px solid var(--line) }
 .investor-signals strong { font-size:3.7rem }
 .investor-signals .mini { margin-bottom:13px }
 .revenue-lane { padding:24px 20px }
 .revenue-lane h3 { font-size:2.3rem }
 .model-steps { gap:14px }
 .model-steps strong { font-size:1rem; overflow-wrap:anywhere }
 .revenue-output strong { font-size:1.8rem }
 .execution-map { grid-template-columns:1fr; gap:27px }
 .execution-map h3 br { display:none }
 .market-switch { align-self:flex-start }
 .market-switch button { padding:13px 18px }
 .market-highlights { grid-template-columns:1fr 1fr }
 .market-highlights>div { padding:21px 17px }
 .market-highlights strong { font-size:2.75rem }
 .market-highlights p { font-size:.875rem }
 .market-highlights p br { display:none }
 .investor-chart { padding:23px 20px }
 .investor-chart h3 { font-size:1.7rem }
 .horizontal-row b { font-size:1.3rem }
 .horizontal-track { height:31px }
 .vertical-chart { grid-template-columns:45px 1fr; gap:9px }
 .vertical-columns { gap:18px }
 .vertical-column>span { font-size:.875rem; height:47px }
 .investor-donut-layout { gap:20px; flex-wrap:wrap }
 .investor-donut { width:180px; height:180px }
 .donut-legend { display:flex; gap:24px; width:100%; justify-content:center }
 .donut-legend p { flex:1; max-width:145px; margin:0 }
 .donut-legend b { font-size:1.5rem }
 .investor-architecture { padding:0 20px }
 .investor-architecture .architecture-flow article { column-gap:16px }
 .investor-architecture .architecture-flow h3 { font-size:1.6rem }
 .advantage-points { grid-template-columns:1fr; gap:26px }
 .advantage-points h3 { font-size:1.85rem }
 .investor-people { grid-template-columns:1fr; gap:28px }
 .investor-people h3 br { display:none }
 .investor-contact-strip { padding-top:34px; padding-bottom:34px }
 .investor-contact-strip h2 { font-size:2.4rem }
 .investor-page footer { gap:22px; padding-top:28px; padding-bottom:28px }
 .investor-page footer>a:last-child { font-size:.875rem }
 .inquiry-dialog { width:100vw; height:100dvh; max-height:100dvh; margin:0; border:0 }
}
@media(max-width:370px) { .engine-visuals { grid-template-columns:1fr }.engine-visuals figure { height:280px }.engine-visuals figcaption>strong { font-size:2.5rem } }
/* All planned-capacity columns share the same zero baseline and 30 GW scale. */
.vertical-columns { position:relative; background:none }
.vertical-columns::before { content:''; position:absolute; left:0; right:0; top:0; height:200px; border-bottom:1px solid #cbd4bf; background:repeating-linear-gradient(to top,transparent 0,transparent calc(33.333333% - 1px),#dce3d3 calc(33.333333% - 1px),#dce3d3 33.333333%); pointer-events:none }
.vertical-column { position:relative }

/* Four disciplines, with manufacturing visible alongside system engineering. */
.investor-people .home-people-grid { grid-template-columns:1fr 1fr; gap:24px }
.investor-people .home-people-grid>article:first-child { padding-top:18px; border-top:1px solid var(--line) }
.investor-people .person-info h3 { font-size:1.3rem }
.investor-people .role { font-size:.68rem }
.investor-people .person-info p { font-size:.8rem }
.brief-download span { font:.65rem var(--mono); border-left:1px solid #819528; padding-left:12px }
@media(max-width:1100px) { .investor-people { grid-template-columns:1fr }.investor-people>div>h3 br { display:none }.investor-people>div>h3 br::after { content:' ' } }
@media(max-width:560px) {
 .investor-header { padding-left:20px; padding-right:20px }
 .investor-header .brand { width:125px }
 .investor-header-actions { gap:12px; font-size:.75rem }
 .investor-header-actions>.brief-download { display:inline-flex; padding:10px 12px; font-size:.75rem; gap:8px }
 .brief-download span { display:none }
 .investor-people .home-people-grid { grid-template-columns:1fr }
}

/* Specific customers, shared capabilities and evidence-based growth. */
.thesis-stage { display:inline-block; padding:6px 0 0; color:#54633e; font-size:.75rem; line-height:1.5 }
.buyer-label { margin:0 0 12px; font:.75rem/1.6 var(--mono); color:var(--muted) }
.revenue-lane h3 { font-size:clamp(2rem,2.8vw,2.8rem) }
.model-steps strong { font-size:1.05rem; line-height:1.35 }
.shared-capabilities { display:grid; grid-template-columns:1fr 1.6fr; gap:40px; margin-top:30px; padding:30px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line) }
.shared-capabilities h3 { font-size:2rem; margin:0 }
.shared-capabilities ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; list-style:none; margin:0; padding:0 }
.shared-capabilities li>span { display:block; color:var(--muted); font:.75rem var(--mono); margin-bottom:13px }
.shared-capabilities strong { display:block; font-size:1rem; font-weight:500; line-height:1.4; margin-bottom:9px }
.shared-capabilities small { display:block; font-size:.875rem; line-height:1.5; color:var(--muted) }
.investment-gates { margin-top:35px }
.gate-heading { display:flex; justify-content:space-between; gap:25px; align-items:flex-end; margin-bottom:25px }
.gate-heading h3 { font-size:2.6rem; margin:0 }
.gate-heading>p { font-size:.875rem; color:var(--muted); margin:0 }
.gate-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--line) }
.gate-grid article { padding:26px 24px }
.gate-grid article+article { border-left:1px solid var(--line) }
.gate-index { display:block; font:.75rem var(--mono); color:var(--muted); margin-bottom:20px }
.gate-grid h4 { font-size:1.75rem; line-height:1.12; margin-bottom:25px }
.gate-grid dl { margin:0 }
.gate-grid dt { font:.75rem var(--mono); color:var(--muted); margin-bottom:8px }
.gate-grid dd { margin:0 0 21px; font-size:1rem; line-height:1.55 }
.gate-grid dd:last-child { margin:0 }
.investor-page .rd-collaboration { margin-top:35px }
@media(max-width:900px) {
 .shared-capabilities { grid-template-columns:1fr; gap:28px }
 .gate-grid article { padding:24px 18px }
 .gate-grid h4 { font-size:1.5rem }
}
@media(max-width:560px) {
 .shared-capabilities { padding:26px 0 }
 .shared-capabilities ul { grid-template-columns:1fr; gap:18px }
 .shared-capabilities li { display:grid; grid-template-columns:24px 1fr; gap:3px 15px }
 .shared-capabilities li>span { grid-row:1/3; margin-top:3px }
 .shared-capabilities strong { margin:0 }
 .shared-capabilities small { grid-column:2 }
 .gate-heading { flex-direction:column; align-items:flex-start; gap:14px }
 .gate-grid { grid-template-columns:1fr }
 .gate-grid article+article { border-left:0; border-top:1px solid var(--line) }
 .gate-grid article { padding:26px 22px }
 .gate-grid h4 { font-size:1.85rem; margin-bottom:20px }
 .gate-grid dd { font-size:1rem }
}
