/* Invest / Capital divisions */
.iv-wrap{max-width:1180px;margin:0 auto;padding:0 clamp(20px,4vw,56px)}
.iv-narrow{max-width:900px}
.iv-kick{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:block;margin:0 0 clamp(22px,3vw,34px)}

/* Two-column header pattern, shared by hero and sections */
.iv-split{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:clamp(24px,3vw,40px) clamp(40px,6vw,96px);align-items:end}

.iv-hero{border-bottom:1px solid var(--line);padding:clamp(58px,7.5vw,104px) 0 clamp(50px,6vw,84px)}
.iv-h1{font-family:"Newsreader",Georgia,serif;font-weight:440;letter-spacing:-.022em;line-height:1.06;color:var(--ink);font-size:clamp(38px,4.9vw,68px);margin:0;text-wrap:pretty}
.iv-lede{font-size:var(--fs-support);line-height:1.55;color:var(--ink-soft);margin:0;text-wrap:pretty}
.iv-meta{display:flex;flex-wrap:wrap;gap:10px 26px;margin:clamp(30px,3.6vw,42px) 0 0;padding-top:clamp(22px,2.6vw,30px);border-top:1px solid var(--line);font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.iv-meta span{display:inline-flex;align-items:center;gap:9px}
.iv-meta span::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--terra);flex:0 0 auto}

.iv-sec{padding:clamp(60px,7vw,98px) 0}
.iv-sec-h{font-family:"Newsreader",Georgia,serif;font-weight:440;letter-spacing:-.018em;line-height:1.1;color:var(--ink);font-size:clamp(31px,3.6vw,48px);margin:0;text-wrap:pretty}
.iv-sec-p{font-size:var(--fs-support);line-height:1.55;color:var(--muted);margin:0;text-wrap:pretty}
.iv-foot-note{font-size:16.5px;line-height:1.6;color:var(--muted);margin:clamp(24px,2.8vw,32px) 0 0;max-width:70ch;text-wrap:pretty}

/* Structure — ruled rail rows */
.iv-arch-sec{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.iv-arch{margin:clamp(38px,4.6vw,58px) 0 0;border-top:1px solid var(--line-2)}
.iv-zone{display:grid;grid-template-columns:200px minmax(0,1fr);gap:0 clamp(28px,4vw,64px);padding:clamp(26px,3.2vw,40px) 0;border-bottom:1px solid var(--line-2)}
.iv-rail{display:flex;flex-direction:column;gap:10px}
.iv-rail-n{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:12.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--terra)}
.iv-rail-t{font-family:"Newsreader",Georgia,serif;font-weight:450;letter-spacing:-.012em;font-size:clamp(22px,2.2vw,29px);line-height:1.15;color:var(--ink)}
.iv-rail-f{margin-top:auto;padding-top:20px;font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:9px}
.iv-rail-f::before{content:"";width:14px;height:1px;background:var(--line-2);flex:0 0 auto}
.iv-zone-body{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.iv-ent{border:1px solid var(--line-2);border-radius:12px;background:var(--bg);padding:clamp(17px,2vw,23px)}
.iv-ent-k{display:block;font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:11.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);margin:0 0 11px;line-height:1.5}
.iv-ent b{display:block;font-family:"Newsreader",Georgia,serif;font-weight:450;letter-spacing:-.012em;font-size:clamp(20px,1.95vw,25px);line-height:1.15;color:var(--ink);margin:0 0 9px}
.iv-ent p{font-size:16px;line-height:1.5;color:var(--muted);margin:0;text-wrap:pretty}
.iv-ent-lead{border-color:var(--terra);box-shadow:inset 0 0 0 1px rgba(63,91,76,.14)}
.iv-ent-lead .iv-ent-k{color:var(--terra)}

/* Programme — vehicle sequence */
.iv-prog{margin:clamp(36px,4.6vw,56px) 0 0;border-top:1px solid var(--line)}
.iv-veh{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:14px clamp(24px,3.4vw,48px);padding:clamp(28px,3.4vw,42px) 0;border-bottom:1px solid var(--line);align-items:start}
.iv-veh-s{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:12.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--terra);padding-top:.6em;line-height:1.6}
.iv-veh b{display:block;font-family:"Newsreader",Georgia,serif;font-weight:450;letter-spacing:-.014em;font-size:clamp(24px,2.5vw,33px);line-height:1.15;color:var(--ink);margin:0 0 12px}
.iv-veh p{font-size:var(--fs-support);line-height:1.55;color:var(--muted);margin:0;max-width:58ch;text-wrap:pretty}
.iv-veh p+p{margin-top:11px}

/* Infrastructure capabilities */
.iv-caps{display:grid;grid-template-columns:1fr 1fr;gap:0 clamp(40px,6vw,90px);margin:clamp(38px,4.6vw,58px) 0 0;border-top:1px solid var(--line)}
.iv-cap-i{padding:clamp(24px,2.9vw,34px) 0;border-bottom:1px solid var(--line)}
.iv-cap-k{display:block;font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--terra);margin:0 0 13px}
.iv-cap-i b{display:block;font-family:"Newsreader",Georgia,serif;font-weight:450;letter-spacing:-.012em;font-size:clamp(21px,2.1vw,27px);line-height:1.2;color:var(--ink);margin:0 0 10px}
.iv-cap-i p{font-size:16.5px;line-height:1.55;color:var(--muted);margin:0;max-width:46ch;text-wrap:pretty}

/* Track record */
.iv-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:clamp(38px,4.6vw,58px) 0 0;border-top:1px solid var(--line-2)}
.iv-stat{border-bottom:1px solid var(--line-2);border-right:1px solid var(--line-2);padding:clamp(24px,2.8vw,34px) clamp(20px,2.4vw,30px) clamp(24px,2.8vw,34px) 0}
.iv-stat:last-child{border-right:0;padding-right:0}
.iv-stat+.iv-stat{padding-left:clamp(24px,3vw,40px)}
.iv-stat-n{display:block;font-family:"Newsreader",Georgia,serif;font-weight:420;letter-spacing:-.028em;line-height:1;color:var(--ink);font-size:clamp(36px,4.1vw,56px)}
.iv-stat-l{display:block;font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--terra);margin:15px 0 9px}
.iv-stat p{font-size:15.5px;line-height:1.5;color:var(--muted);margin:0;text-wrap:pretty}

.iv-tag{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;padding:8px 15px;border-radius:999px;border:1px solid var(--terra);color:var(--terra);justify-self:end}
.iv-cta{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px clamp(28px,4vw,52px);margin:clamp(36px,4.2vw,50px) 0 0}
.iv-cta .btn{font-size:16.5px}
.iv-cta-note{font-size:16.5px;line-height:1.55;color:var(--muted);margin:0;max-width:52ch;text-wrap:pretty}

.iv-notice{border-top:1px solid var(--line);padding:clamp(44px,5.5vw,72px) 0 clamp(56px,7vw,96px)}
.iv-notice h2{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 clamp(22px,2.6vw,30px)}
.iv-notice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(22px,3vw,38px) clamp(28px,4vw,56px)}
.iv-notice-grid div b{display:block;font-weight:600;font-size:16.5px;color:var(--ink-soft);margin:0 0 9px}
.iv-notice-grid div p{font-size:16px;line-height:1.6;color:var(--muted);margin:0;text-wrap:pretty}

@media(max-width:1000px){
.iv-zone{grid-template-columns:170px minmax(0,1fr)}
}
@media(max-width:900px){
.iv-split{grid-template-columns:1fr;align-items:start;gap:22px}
.iv-zone{grid-template-columns:1fr;gap:20px}
.iv-rail{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:6px 16px}
.iv-rail-f{margin:0;padding:0}
.iv-rail-f::before{display:none}
.iv-stats{grid-template-columns:1fr 1fr}
.iv-stat:nth-child(2n){border-right:0;padding-right:0}
.iv-caps{grid-template-columns:1fr;gap:0}
.iv-veh{grid-template-columns:110px minmax(0,1fr);gap:12px 28px}
.iv-veh .iv-tag{grid-column:2;justify-self:start}
.iv-notice-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
.iv-zone-body{grid-template-columns:1fr}
.iv-stats{grid-template-columns:1fr}
.iv-stat{border-right:0;padding-right:0}
.iv-stat+.iv-stat{padding-left:0}
.iv-veh{grid-template-columns:1fr;gap:0}
.iv-veh-s{padding:0 0 11px}
.iv-veh .iv-tag{grid-column:1;margin-top:16px}
.iv-tag{justify-self:start}
.iv-cta{grid-template-columns:1fr;justify-items:start}
}
