/* Approved corporate content: spacious desktop layouts, natural mobile order. */
.corporate-page{--corporate-ink:#1d1d1f;--corporate-paper:#f3f3f3;color:var(--corporate-ink)}
.corporate-page .cms-text{overflow-wrap:anywhere}
.corporate-top h1{max-width:1030px;text-wrap:balance}
.corporate-top .intro{max-width:780px;font-size:21px}
.corporate-split{display:grid;grid-template-columns:1fr 1.08fr;gap:9%;align-items:start}
.corporate-split h2{max-width:580px;font-size:clamp(32px,3.7vw,52px);text-wrap:balance}
.corporate-copy p{font-size:18px;line-height:1.8;color:#56585b}
.corporate-copy p:last-child{margin-bottom:0}
.corporate-record{background:#222123;color:#fff;padding:62px 0}
.corporate-record .wrap{display:grid;grid-template-columns:1fr 1.08fr;gap:9%;align-items:center;border-left:3px solid var(--red);padding-left:34px}
.corporate-record h2{font-size:clamp(32px,3.7vw,52px);max-width:540px;margin:0;text-wrap:balance}
.corporate-record p{font-size:19px;color:#dedede;margin:0;line-height:1.8}
.corporate-engineering{background:#f5f5f5}
.corporate-process{margin-top:55px;padding:30px 0 0;border-top:1px solid #d2d2d2}
.process-heading{display:flex;justify-content:space-between;gap:20px;text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:#646464}
.corporate-process ol{list-style:none;padding:0;margin:38px 0 0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr))}
.corporate-process li{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px;font-size:14px}
.corporate-process li:before{content:'';height:1px;background:#bdbdbd;position:absolute;top:19px;left:0;right:0}
.corporate-process li:first-child:before{left:50%}.corporate-process li:last-child:before{right:50%}
.step-node{position:relative;display:grid;place-items:center;border-radius:50%;height:39px;width:39px;background:#252525;color:white;font-size:12px}
.corporate-process li:first-child .step-node,.corporate-process li:last-child .step-node{background:#b52332}
.corporate-purpose{background:#f4f4f4;padding:75px 0}
.purpose-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%}
.purpose-grid article+article{border-left:1px solid #d3d3d3;padding-left:14%}
.purpose-grid h2{font-size:clamp(28px,3vw,40px);line-height:1.2;max-width:560px;text-wrap:balance}
.purpose-grid p{font-size:17px;color:#56585b;line-height:1.8;margin-bottom:0}
.milestone-grid{padding:0;margin:56px 0 40px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 40px;list-style:none}
.milestone-grid li{border-top:1px solid #d0d0d0;position:relative;padding-top:25px}
.milestone-grid li:before{content:'';position:absolute;top:-4px;left:0;width:7px;height:7px;border-radius:50%;background:#b52332}
.milestone-year{font-size:32px;font-weight:400;letter-spacing:-.025em;display:block;color:#b52332}
.milestone-grid h3{font-size:21px;line-height:1.4;margin:18px 0 13px}
.milestone-grid p{font-size:15px;line-height:1.75;color:#626262;margin:0}
.full-history{border-bottom:1px solid #d3d3d3;padding:24px 0}
.full-history summary{font-size:17px;min-height:28px;max-width:100%}
.full-history ol{list-style:none;padding:20px 0 0;margin:0}
.full-history li{display:grid;grid-template-columns:90px 1fr;gap:24px;padding:20px 0;border-top:1px solid #e3e3e3}
.full-history li strong{font-size:20px;font-weight:400;color:#b52332}
.full-history li p{max-width:920px;margin:0;color:#56585b}
.corporate-future{background:#f4f4f4}
.corporate-expertise .cap-list{margin-top:35px}
.corporate-expertise .cap-row{grid-template-columns:60px .85fr 1.15fr;gap:30px;padding:37px 0}
.corporate-expertise .cap-row h3{font-size:26px;max-width:400px}
.corporate-expertise .cap-row p{font-size:17px;line-height:1.8}
.corporate-ecosystem{background:#fff}
.ecosystem-diagram{position:relative;display:grid;grid-template-columns:1fr 240px 1fr;grid-template-rows:1fr 1fr;gap:65px 20px;min-height:440px;margin-top:45px}
.ecosystem-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.ecosystem-lines path{fill:none;stroke:#c4c4c4;stroke-width:1}
.ecosystem-hub{grid-column:2;grid-row:1/3;align-self:center;justify-self:center;position:relative;width:180px;min-height:180px;aspect-ratio:1;display:flex;align-items:center;justify-content:center;padding:30px;border-radius:50%;background:#242424;color:white;text-align:center;font-size:22px;line-height:1.35}
.ecosystem-node{position:relative;text-align:center;align-self:center;background:#fff;padding:20px 10px}
.ecosystem-node-0{grid-column:1;grid-row:1}.ecosystem-node-1{grid-column:3;grid-row:1}.ecosystem-node-2{grid-column:1;grid-row:2}.ecosystem-node-3{grid-column:3;grid-row:2}
.ecosystem-node h3{font-size:24px;margin:12px 0}.ecosystem-node p{font-size:16px;color:#666;margin:0;max-width:none}
.ecosystem-dot{display:block;width:8px;height:8px;background:#b52332;border-radius:50%;margin:auto}
.corporate-page .contact-cta h2{font-size:clamp(32px,4vw,52px);text-wrap:balance}
.corporate-page .contact-cta .button{flex-shrink:0}
@media(max-width:1000px){.milestone-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.corporate-split,.corporate-record .wrap{gap:6%}.ecosystem-diagram{grid-template-columns:1fr 180px 1fr}.ecosystem-hub{width:160px;min-height:160px;font-size:20px}.corporate-process li{font-size:12px}}
@media(max-width:700px){.corporate-top .intro{font-size:18px}.corporate-top h1{font-size:clamp(38px,9.5vw,56px)}.corporate-split,.corporate-record .wrap,.purpose-grid{grid-template-columns:1fr;gap:24px}.corporate-copy p{font-size:17px}.corporate-split h2{margin-bottom:0}.corporate-record{padding:45px 0}.corporate-record .wrap{padding-left:22px}.corporate-record p{font-size:17px}.corporate-process{margin-top:35px}.process-heading{font-size:10px}.corporate-process ol{display:block;margin-top:28px}.corporate-process li{flex-direction:row;gap:20px;text-align:left;align-items:flex-start;min-height:64px;font-size:16px}.corporate-process li:before,.corporate-process li:first-child:before,.corporate-process li:last-child:before{width:1px;height:auto;left:19px;right:auto;top:0;bottom:0}.corporate-process li:last-child:before{display:none}.corporate-process li:last-child{min-height:39px}.step-node{flex-shrink:0}.step-label{padding-top:7px}.corporate-purpose{padding:55px 0}.purpose-grid{gap:38px}.purpose-grid article+article{border-left:0;border-top:1px solid #d3d3d3;padding:34px 0 0}.purpose-grid h2{margin-bottom:20px}.milestone-grid{grid-template-columns:1fr;margin-top:40px;gap:30px}.milestone-year{font-size:30px}.milestone-grid h3{margin-top:12px}.milestone-grid p{font-size:16px}.full-history li{grid-template-columns:55px 1fr;gap:16px}.full-history li p{font-size:15px}.corporate-expertise .cap-row{grid-template-columns:28px 1fr;gap:12px 16px;padding:27px 0}.corporate-expertise .cap-row h3{font-size:24px}.corporate-expertise .cap-row p{grid-column:2;font-size:16px}.ecosystem-diagram{display:flex;flex-direction:column;gap:0;min-height:0;margin-top:32px}.ecosystem-lines{display:none}.ecosystem-hub{width:auto;min-height:0;aspect-ratio:auto;border-radius:0;align-self:stretch;padding:23px;font-size:20px}.ecosystem-node{text-align:left;align-self:stretch;border-bottom:1px solid #ddd;padding:24px 0 24px 23px}.ecosystem-dot{position:absolute;left:0;top:45px}.ecosystem-node h3{font-size:23px;margin:8px 0}.ecosystem-node p{font-size:16px}.corporate-page .contact-cta .button{margin-top:25px}}

/* One continuous company history; the rising line conveys chronology, not a metric. */
.corporate-history{background:#fafafa}
.history-ascent{height:220px;position:relative;margin:50px 0 60px;border-bottom:1px solid #ddd}
.history-ascent svg{position:absolute;inset:25px 0 0;width:100%;height:180px;overflow:visible}
.ascent-area{fill:#b5233207}.ascent-line{fill:none;stroke:#b52332;stroke-width:2;vector-effect:non-scaling-stroke}
.ascent-stop{position:absolute;display:flex;flex-direction:column;align-items:center;transform:translate(-50%,-100%);gap:15px;font-size:clamp(23px,3vw,38px);line-height:1;font-weight:400;letter-spacing:-.04em;padding:10px}
.ascent-stop i{width:12px;height:12px;background:#b52332;border:3px solid #fafafa;border-radius:50%;box-shadow:0 0 0 1px #b52332}
.ascent-stop-0{left:3%;top:181px}.ascent-stop-1{left:34%;top:139px}.ascent-stop-2{left:65%;top:97px}.ascent-stop-3{left:97%;top:55px}
.history-chapter{display:grid;grid-template-columns:.7fr 1.3fr;gap:8%;padding:52px 0;border-top:1px solid #d7d7d7;align-items:start}
.history-chapter-heading{position:sticky;top:125px;display:grid;grid-template-columns:38px 1fr;gap:15px 10px;padding-top:10px}
.chapter-index{font-size:12px;color:#b52332;padding-top:8px}.chapter-range{font-size:27px;letter-spacing:-.04em}
.history-chapter-heading h3{grid-column:2;font-size:clamp(27px,3vw,40px);line-height:1.18;max-width:360px;margin:0;text-wrap:balance}
.history-year-list{list-style:none;padding:0;margin:0;position:relative;border-left:1px solid #ccc}
.history-year{display:grid;grid-template-columns:64px 1fr;gap:18px;margin:0 0 0 24px;padding:23px 12px 23px 8px;position:relative;border-bottom:1px solid #e1e1e1;scroll-margin-top:110px}
.history-year:before{content:'';position:absolute;left:-29px;top:33px;width:8px;height:8px;border:1px solid #b52332;background:#fafafa;border-radius:50%}
.history-date{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:20px;font-weight:400;letter-spacing:-.025em;color:#686868;line-height:1.45}
.history-year p{font-size:16px;line-height:1.7;color:#5b5b5b;margin:0;max-width:none}
.history-year.history-featured{background:#252426;color:#fff;padding:28px;margin-top:18px;margin-bottom:18px;border:0;grid-template-columns:max-content minmax(0,1fr);gap:24px}
.history-featured .history-date{font-size:35px;color:#fff;line-height:1.15}
.history-featured p{font-size:17px;color:#eee;line-height:1.7}
.history-featured:before{top:38px;background:#b52332}
.history-year.history-peak{background:#a92330;padding-top:35px;padding-bottom:35px}
.history-peak .history-date{font-size:43px}.history-peak p{font-size:18px;color:#fff}
.history-year:focus-visible{outline:2px solid #b52332;outline-offset:6px}
@media(max-width:900px){.history-chapter{grid-template-columns:.65fr 1.35fr;gap:4%}.history-year.history-featured{grid-template-columns:1fr;gap:12px;padding:25px}.history-chapter-heading{grid-template-columns:25px 1fr}.history-chapter-heading h3{font-size:29px}}
@media(max-width:700px){.history-ascent{margin:30px 10px 35px;height:185px}.history-ascent svg{height:140px;top:28px}.ascent-stop{font-size:23px;gap:12px}.ascent-stop-0{top:151px}.ascent-stop-1{top:118px}.ascent-stop-2{top:85px}.ascent-stop-3{top:53px}.history-chapter{grid-template-columns:1fr;gap:25px;padding:32px 0}.history-chapter-heading{position:static;grid-template-columns:27px 1fr;gap:10px}.chapter-range{font-size:24px}.history-chapter-heading h3{font-size:29px;max-width:100%}.history-year-list{margin-left:5px}.history-year{grid-template-columns:1fr;gap:8px;padding:20px 0 20px 4px;margin-left:20px}.history-year:before{left:-25px;top:29px}.history-date{font-size:22px}.history-year p{font-size:16px}.history-year.history-featured{padding:24px;margin-left:20px;gap:13px}.history-featured .history-date{font-size:33px}.history-peak .history-date{font-size:40px}.history-featured p,.history-peak p{font-size:17px}}
