/* Enterprise information systems and AI — shared editorial system. */
:root { --business-navy: #081827; --business-paper: #edf0ef; --business-rule: #c7d0d3; }
.business-page { background: var(--business-paper); }
.business-page h1, .business-page h2, .business-page h3 { font-weight: 600; letter-spacing: -.04em; }
.business-page p { text-wrap: pretty; }
.business-page em { font-style: normal; }
.business-page .section-shell { width: min(1280px, calc(100% - 96px)); }
.site-header .desktop-nav { gap: clamp(17px, 2.2vw, 32px); }
.site-header .menu-toggle { position: relative; color: #edf3f5; align-items: center; justify-content: center; }
.site-header .menu-toggle span { display: block; position: absolute; left: 11px; right: 11px; width: auto; height: 2px; background: currentColor; border-radius: 0; transition: transform .2s ease; }
.site-header .menu-toggle span:first-child { top: 16px; }
.site-header .menu-toggle span:last-child { top: 25px; }
.site-header .menu-toggle[aria-expanded="true"] span:first-child { top: 21px; transform: rotate(45deg); }
.site-header .menu-toggle[aria-expanded="true"] span:last-child { top: 21px; transform: rotate(-45deg); }
.mobile-nav[hidden] { display: none !important; }
.site-header .mobile-nav { background: #061521; max-height: calc(100dvh - 110px); overflow-y: auto; }
.mobile-nav a { min-height: 46px; display: flex; align-items: center; }
.business-hero { padding: 167px 0 0; color: #eff3f4; background: linear-gradient(113deg,#06111d 0%,#0b2133 75%,#122b3c 100%); }
.business-hero-grid { display: grid; grid-template-columns: 1.25fr 1fr; gap: 68px; align-items: center; padding-bottom: 72px; }
.business-hero-copy .eyebrow { margin: 0 0 35px; color: #b1c4cd; letter-spacing: .12em; font-size: 13px; }
.business-hero h1 { margin: 0; font-size: clamp(40px,4vw,59px); line-height: 1.3; letter-spacing: -.055em; white-space: nowrap; }
.business-hero h1 em { color: #b9d0d9; }
.business-lead { max-width: 590px; margin: 28px 0 0; font-size: 18px; line-height: 1.95; color: #bccbd4; }
.business-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin: 32px 0 0; }
.business-actions .button { white-space: nowrap; gap: 18px; }
.business-actions .button span { margin-left: 0; }
.hero-caption { font-size: 12px; line-height: 1.8; color: #92a9b7; letter-spacing: .035em; margin-top: 32px; }
.business-composition { position: relative; padding: 24px 27px 0; border: 1px solid #6c899960; border-top-color: #c0d1d9a6; background: linear-gradient(145deg,#1d354670,#0a1b2b50); box-shadow: 0 30px 60px #00000025, inset 0 1px #e5eef21a; }
.composition-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 12px; color: #bdcdd4; }
.composition-heading b { font-size: 10px; font-weight: 500; letter-spacing: .2em; }
.composition-source { margin-top: 30px; padding-bottom: 22px; display: flex; flex-wrap: wrap; gap: 10px 18px; border-bottom: 1px solid #a3bac53d; font-size: 12px; color: #a3bac7; }
.composition-core { padding: 25px 0; }
.composition-core small { display: block; font-size: 12px; color: #abc3ce; }
.composition-core strong { display: block; margin: 9px 0 18px; font-size: 30px; font-weight: 500; letter-spacing: -.04em; }
.composition-core > div { display: flex; gap: 20px; font-size: 11px; color: #9fb7c4; }
.composition-foundation { padding: 20px 0 25px; border-top: 1px solid #a3bac53d; }
.composition-foundation small, .composition-foundation > span { color: #b5c6cf; font-size: 12px; }
.composition-foundation p { display: flex; align-items: center; gap: 14px; margin: 8px 0; }
.composition-foundation b { font-size: 27px; letter-spacing: .06em; font-weight: 500; }
.composition-foundation i { font-style: normal; color: #6a889a; }
.composition-ai { display: grid; grid-template-columns: 1fr 1fr; margin: 0 -27px; border-top: 1px solid #a3bac565; background: #050f1960; }
.composition-ai a { min-height: 92px; padding: 17px 22px; color: #eff5f8; transition: background .2s; }
.composition-ai a:hover { background: #44607444; }
.composition-ai a + a { border-left: 1px solid #a3bac53d; }
.composition-ai span { display: block; color: #9bb3c1; font-size: 11px; margin-bottom: 5px; }
.composition-ai strong { font-size: 14px; font-weight: 550; }
.entry-rail { display: grid; grid-template-columns: .8fr 1fr 1fr 1fr; border-top: 1px solid #a3bac546; min-height: 86px; align-items: stretch; }
.entry-rail > span { align-self: center; color: #8da6b6; font-size: 12px; }
.entry-rail a { padding: 26px 20px; border-left: 1px solid #a3bac536; color: #dce6eb; font-size: 14px; display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.entry-rail a:hover { background: #d5e2ea0b; }
.entry-rail b { font-size: 11px; color: #9db7c5; white-space: nowrap; font-weight: 400; }
.business-section { padding: 100px 0; }
.paper-section { background: var(--business-paper); color: #142637; }
.navy-section { background: #091a29; color: #e9f0f3; }
.business-heading { display: grid; grid-template-columns: 1.1fr .9fr; gap: 72px; align-items: end; margin-bottom: 48px; }
.business-heading .section-index, .data-feature .section-index { margin: 0 0 24px; color: #647a88; }
.business-heading h2, .data-feature h2, .about-business h2 { margin: 0; font-size: clamp(33px,3.4vw,48px); line-height: 1.35; }
.business-heading > p { margin: 0; color: #526775; line-height: 1.9; font-size: 16px; }
.navy-section .business-heading > p { color: #aabdc9; }
.navy-section .section-index { color: #93afbf; }
.manufacturing-chain { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid #768d9b; border-bottom: 1px solid var(--business-rule); }
.manufacturing-chain article { padding: 27px 26px 23px 0; display: flex; flex-direction: column; }
.manufacturing-chain article + article { border-left: 1px solid var(--business-rule); padding-left: 26px; }
.manufacturing-chain small { font-size: 12px; color: #687e8a; }
.manufacturing-chain h3 { font-size: 21px; margin: 30px 0 12px; line-height: 1.5; }
.manufacturing-chain p { margin: 0 0 30px; color: #586e7b; font-size: 14px; line-height: 1.85; }
.manufacturing-chain b { margin-top: auto; font-size: 27px; font-weight: 400; color: #8a9da7; letter-spacing: .03em; }
.section-bottom { display: flex; align-items: center; gap: 30px; flex-wrap: wrap; padding-top: 26px; }
.section-bottom > p { margin: 0; flex: 1 1 380px; color: #5c7180; font-size: 13px; }
.business-page .text-link { font-size: 14px; font-weight: 600; display: inline-flex; gap: 30px; align-items: center; color: inherit; border-bottom: 1px solid currentColor; padding: 6px 0; }
.business-page .text-link:hover { color: #3e798d; }
.ai-paths { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid #6c86964d; }
.ai-path { padding: 32px 40px 38px; display: flex; flex-direction: column; background: #10263855; }
.ai-path + .ai-path { border-left: 1px solid #6c86964d; background: #071725; }
.path-top { display: flex; justify-content: space-between; align-items: center; gap: 18px; color: #9fb5c1; font-size: 12px; }
.path-top b { font-size: 25px; font-weight: 300; color: #738e9e; }
.ai-path h3 { margin: 35px 0 22px; font-size: 37px; line-height: 1.32; color: #e6eef2; }
.ai-path > p { margin: 0 0 20px; color: #aabecb; font-size: 15px; line-height: 1.9; }
.ai-path > .path-lead { color: #dbe7ee; font-size: 18px; }
.path-detail { margin-top: auto; padding: 22px 0; border-top: 1px solid #8ca6b438; }
.path-detail span { display: block; font-size: 14px; color: #bcced9; }
.path-detail small { display: block; font-size: 12px; color: #8fa8b8; margin-top: 9px; }
.ai-path .text-link { align-self: start; }
.data-feature { display: grid; grid-template-columns: 1fr 1fr; gap: 96px; align-items: center; }
.data-feature h2 { margin-bottom: 25px; }
.data-feature p { color: #536a79; font-size: 16px; line-height: 1.95; }
.data-feature .text-link { margin-top: 16px; }
.data-ledger { padding-top: 2px; border-top: 2px solid #647e8e; }
.data-ledger > div { display: grid; grid-template-columns: 36px 1fr; gap: 6px 10px; padding: 23px 0; border-bottom: 1px solid var(--business-rule); }
.data-ledger > div > span { grid-row: span 2; color: #92a2aa; font-size: 12px; padding-top: 6px; }
.data-ledger strong { font-size: 20px; font-weight: 550; }
.data-ledger small { font-size: 13px; color: #637985; }
.data-ledger > p { font-size: 12px; text-align: center; margin: 22px 0 0; }
.business-cases { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid #829caa75; border-bottom: 1px solid #829caa50; }
.business-cases > a { display: flex; flex-direction: column; padding: 30px 32px 30px 0; color: #eaf0f3; }
.business-cases > a + a { border-left: 1px solid #829caa40; padding-left: 32px; }
.business-cases small { color: #91adbd; font-size: 12px; }
.business-cases h3 { margin: 32px 0 20px; font-size: 25px; line-height: 1.6; }
.business-cases p { color: #adc0cc; font-size: 14px; line-height: 1.85; margin: 0 0 35px; }
.business-cases a > span { margin-top: auto; font-size: 12px; color: #bdced8; }
.business-cases a:hover h3 { color: #b6d7e1; }
.delivery-steps { list-style: none; display: grid; grid-template-columns: repeat(4,1fr); gap: 30px; margin: 0; padding: 0; }
.delivery-steps li { border-top: 1px solid #a0b0b9; padding-top: 22px; }
.delivery-steps span { font-size: 28px; color: #899da8; font-weight: 300; }
.delivery-steps h3 { font-size: 19px; margin: 20px 0 13px; }
.delivery-steps p { font-size: 14px; color: #5d7380; line-height: 1.85; }
.about-business { border-top: 1px solid #bcc8ce; background: #e2e8e8; }
.about-business-grid { display: grid; grid-template-columns: .85fr 1fr; gap: 96px; }
.about-business .section-index { color: #637e8e; margin-bottom: 22px; }
.about-business p:not(.section-index) { color: #536a79; line-height: 1.9; margin: 0 0 20px; }
.business-contact { padding: 86px 0 92px; background: #0b2132; color: #edf3f6; }
.business-contact .section-index { color: #96b0c1; margin: 0 0 26px; }
.business-contact h2 { font-size: clamp(36px,4.3vw,58px); line-height: 1.3; margin: 0 0 28px; }
.business-contact p:not(.section-index) { color: #aabfcf; line-height: 1.9; }
.business-contact-meta { display: flex; flex-wrap: wrap; gap: 20px 40px; color: #9ab0bf; font-size: 13px; margin-top: 30px; }
.business-contact-meta a { color: #cbd9e2; }
.business-intro { padding: 163px 0 68px; background: linear-gradient(110deg,#07131f,#102a3e); color: #eaf2f6; }
.business-intro .section-index { color: #a6bfcd; margin-bottom: 28px; }
.business-intro h1 { font-size: clamp(36px,4.5vw,62px); line-height: 1.3; margin: 0 0 28px; max-width: 1080px; }
.business-intro h1 em { color: #b5cdd8; }
.business-intro .intro-lead { max-width: 820px; font-size: 18px; line-height: 1.95; color: #b4c7d2; }
.business-intro .intro-links { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 30px; }
.business-intro .intro-links a { font-size: 13px; padding: 9px 16px; color: #cddce5; border: 1px solid #768f9f75; }
.business-intro .intro-links a:hover { border-color: #bfd4df; }
.business-answer { padding: 38px 0; border-bottom: 1px solid #c1ced5; }
.business-answer .section-shell { display: grid; grid-template-columns: 210px 1fr; gap: 40px; }
.business-answer h2 { font-size: 19px; margin: 0; }
.business-answer p { margin: 0; color: #536b7b; font-size: 16px; line-height: 1.9; }
.business-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 26px; }
.business-grid.two-columns { grid-template-columns: 1fr 1fr; }
.business-grid article { padding: 28px 0; border-top: 1px solid #99acb8; }
.business-grid small { color: #617d8f; font-size: 12px; }
.business-grid h3 { font-size: 23px; margin: 22px 0 16px; line-height: 1.45; }
.business-grid p { color: #536e7f; font-size: 15px; line-height: 1.95; }
.business-grid ul { list-style: none; padding: 0; margin-top: 20px; font-size: 13px; color: #68808f; }
.business-grid li { padding: 8px 0; border-top: 1px solid #a5b7c33b; }
.navy-section .business-grid article { border-color: #708c9f75; }
.navy-section .business-grid p { color: #a6bdcc; }
.navy-section .business-grid small, .navy-section .business-grid ul { color: #91adbf; }
.business-faq { max-width: 960px; }
.business-faq details { border-top: 1px solid #b5c5d0; padding: 21px 0; }
.business-faq details:last-child { border-bottom: 1px solid #b5c5d0; }
.business-faq summary { cursor: pointer; font-size: 19px; font-weight: 550; list-style-position: outside; margin-left: 20px; padding-left: 8px; }
.business-faq details p { margin: 16px 0 0 28px; color: #526b7c; line-height: 1.95; }
.article-body { max-width: 820px; margin: 0 auto; }
.article-body h2 { font-size: 29px; margin: 48px 0 20px; }
.article-body h3 { font-size: 21px; margin: 28px 0 15px; }
.article-body p, .article-body li { color: #466174; font-size: 16px; line-height: 2; }
.article-body ul { padding-left: 23px; }
.article-body .article-meta { font-size: 12px; color: #7c919f; }
.article-body a { color: #315f79; text-decoration: underline; text-underline-offset: 4px; }
.content-section.content-section-dark { background: #0a1b2a; color: #eaf1f5; }
.content-section-dark .content-heading p, .content-section-dark .capability-card p, .content-section-dark .signal-card p { color: #b2c5d2; }
.editorial-page .editorial-hero h1 { font-size: clamp(38px,4.5vw,66px); line-height: 1.28; letter-spacing: -.045em; }
.editorial-page .content-heading h2 { font-size: clamp(30px,3.4vw,46px); line-height: 1.36; }
.editorial-page .editorial-hero-inner { gap: 56px; }
.site-footer { background: #050f1a; }
.industry-case { display: grid; grid-template-columns: 1fr 1.1fr; gap: 75px; padding: 42px 0 55px; border-top: 1px solid #a9bbc6; scroll-margin-top: 115px; }
.industry-case-title small { color:#6f8796; font-size:12px; }
.industry-case-title h2 { font-size:34px; line-height:1.5; margin:24px 0 24px; }
.industry-case-detail > div { display:grid; grid-template-columns:72px 1fr; gap:20px; margin-bottom:21px; }
.industry-case-detail h3 { font-size:12px; margin:4px 0 0; color:#718995; letter-spacing:0; }
.industry-case-detail p { margin:0; font-size:15px; line-height:1.9; color:#4d6779; }
@media(max-width:760px) {
 .industry-case { grid-template-columns:1fr; gap:28px; padding:30px 0 36px; }
 .industry-case-title h2 { font-size:27px; margin:19px 0; }
 .industry-case-detail > div { grid-template-columns:1fr; gap:9px; }
}
@media (max-width:1100px) {
 .business-hero-grid { gap: 35px; grid-template-columns: 1.2fr 1fr; }
 .business-hero h1 { font-size: 4.05vw; }
 .business-lead { font-size: 16px; }
 .business-composition { padding-left: 20px; padding-right: 20px; }
 .composition-ai { margin-left:-20px; margin-right:-20px; }
 .composition-ai a { padding: 16px 13px; }
 .composition-core strong { font-size: 27px; }
 .composition-core > div { gap: 12px; }
 .business-heading { gap: 40px; }
 .data-feature, .about-business-grid { gap: 52px; }
 .ai-path { padding: 27px; }
 .ai-path h3 { font-size: 32px; }
 .entry-rail { grid-template-columns: .8fr 1fr 1fr 1fr; }
 .entry-rail a { padding-left: 14px; padding-right: 14px; font-size: 12px; }
 .manufacturing-chain article { padding-right: 18px; }
 .manufacturing-chain article + article { padding-left: 18px; }
}
@media (max-width:900px) {
 .business-page .section-shell { width: calc(100% - 48px); }
 .site-header .desktop-nav { display: none; }
 .site-header .menu-toggle { display: flex; width: 44px; height: 44px; }
 .business-hero { padding-top: 142px; }
 .business-hero-grid { gap: 35px; }
 .business-hero h1 { font-size: 4.05vw; }
 .hero-caption { font-size: 11px; }
 .business-actions { gap: 10px; }
 .business-actions .button { font-size: 13px; padding: 0 15px; }
 .composition-heading b { display: none; }
 .composition-source { gap: 7px 12px; }
 .composition-core strong { font-size: 23px; }
 .composition-foundation b { font-size: 21px; }
 .composition-foundation p { gap: 11px; }
 .composition-ai { grid-template-columns: 1fr; }
 .composition-ai a { min-height: 66px; padding: 10px 20px; }
 .composition-ai a + a { border-left: 0; border-top: 1px solid #a3bac53d; }
 .business-heading { grid-template-columns: 1fr; gap: 24px; }
 .business-heading > p { max-width: 690px; }
 .manufacturing-chain { grid-template-columns: 1fr 1fr; }
 .manufacturing-chain article { padding: 25px !important; }
 .manufacturing-chain article:nth-child(3) { border-left:0; }
 .manufacturing-chain article:nth-child(n+3) { border-top:1px solid var(--business-rule); }
 .delivery-steps { grid-template-columns: 1fr 1fr; }
 .business-cases { grid-template-columns: 1fr; }
 .business-cases > a, .business-cases > a + a { border-left:0; padding:25px 0; }
 .business-cases > a + a { border-top:1px solid #829caa40; }
 .business-cases h3 { margin-top:20px; }
 .business-cases h3 br { display: none; }
 .business-cases p { margin-bottom: 20px; }
 .business-grid { grid-template-columns:1fr 1fr; }
 .business-answer .section-shell { grid-template-columns:1fr; gap:16px; }
}
@media (max-width:600px) {
 .business-page .section-shell { width:calc(100% - 40px); }
 .site-header { width:calc(100% - 32px); top:12px; padding-left:16px; padding-right:12px; }
 .business-hero { padding-top: 125px; }
 .business-hero-grid { grid-template-columns:1fr; gap:38px; padding-bottom:32px; }
 .business-hero-copy .eyebrow { font-size:10px; margin-bottom:25px; letter-spacing:.09em; }
 .business-hero h1 { font-size:clamp(27px,7.45vw,44px); line-height:1.45; letter-spacing:-.04em; }
 .business-lead { font-size:15px; line-height:1.95; margin-top:20px; }
 .business-actions { margin-top:24px; }
 .business-actions .button { width:auto; flex:1 1 145px; padding:0 17px; justify-content:center; font-size:13px; min-height:50px; }
 .hero-caption { margin-top:24px; font-size:10px; line-height:1.9; }
 .business-composition { padding:20px 22px 0; }
 .composition-heading b { display:block; }
 .composition-source { margin-top:20px; padding-bottom:16px; }
 .composition-core { padding:20px 0; }
 .composition-core strong { font-size:26px; margin:8px 0 15px; }
 .composition-foundation { padding:17px 0 20px; }
 .composition-foundation b { font-size:25px; }
 .composition-ai { grid-template-columns:1fr 1fr; margin:0 -22px; }
 .composition-ai a { padding:13px 16px; min-height:80px; }
 .composition-ai a + a { border-top:0; border-left:1px solid #a3bac53d; }
 .composition-ai strong { font-size:12px; }
 .entry-rail { grid-template-columns:1fr; padding-bottom:12px; }
 .entry-rail > span { padding:18px 0 10px; }
 .entry-rail a { padding:14px 0; border-left:0; border-bottom:1px solid #a3bac529; font-size:14px; }
 .entry-rail a:last-child { border-bottom:0; }
 .business-section { padding:64px 0; }
 .business-heading { gap:23px; margin-bottom:30px; }
 .business-heading .section-index, .data-feature .section-index { font-size:11px; margin-bottom:20px; }
 .business-heading h2, .data-feature h2, .about-business h2 { font-size:clamp(27px,7.8vw,37px); line-height:1.4; }
 .business-heading > p { font-size:15px; }
 .manufacturing-chain { grid-template-columns:1fr; }
 .manufacturing-chain article { padding:23px 0 !important; border-left:0 !important; display:grid; grid-template-columns:1fr auto; column-gap:20px; }
 .manufacturing-chain article + article { border-top:1px solid var(--business-rule); }
 .manufacturing-chain h3 { margin:16px 0 10px; grid-column:1; font-size:22px; }
 .manufacturing-chain small { grid-column:1; }
 .manufacturing-chain p { grid-column:1; margin:0; }
 .manufacturing-chain b { grid-column:2; grid-row:1 / 4; font-size:19px; writing-mode:vertical-rl; margin:0; align-self:center; }
 .section-bottom { gap:16px; padding-top:20px; }
 .section-bottom > p { flex-basis:100%; }
 .business-page .text-link { font-size:13px; gap:19px; }
 .ai-paths { grid-template-columns:1fr; }
 .ai-path { padding:22px; }
 .ai-path + .ai-path { border-left:0; border-top:1px solid #6c86964d; }
 .path-top { font-size:10px; }
 .ai-path h3 { font-size:31px; margin-top:27px; }
 .ai-path > .path-lead { font-size:16px; }
 .ai-path > p { font-size:14px; }
 .path-detail span { font-size:12px; }
 .path-detail small { font-size:11px; }
 .data-feature, .about-business-grid { grid-template-columns:1fr; gap:32px; }
 .data-feature p, .about-business p:not(.section-index) { font-size:15px; }
 .data-ledger strong { font-size:18px; }
 .business-cases h3 { font-size:23px; }
 .delivery-steps { grid-template-columns:1fr; gap:21px; }
 .delivery-steps li { display:grid; grid-template-columns:44px 1fr; column-gap:15px; padding-top:20px; }
 .delivery-steps span { grid-row:span 2; font-size:25px; }
 .delivery-steps h3 { margin:0 0 10px; font-size:19px; }
 .delivery-steps p { margin:0; }
 .business-contact { padding:64px 0; }
 .business-contact h2 { font-size:38px; }
 .business-contact p:not(.section-index) { font-size:15px; }
 .business-contact-meta { font-size:12px; gap:12px; }
 .business-intro { padding:124px 0 52px; }
 .business-intro h1 { font-size:clamp(29px,8.5vw,43px); line-height:1.4; }
 .business-intro .section-index { font-size:11px; margin-bottom:22px; }
 .business-intro .intro-lead { font-size:15px; line-height:1.9; }
 .business-intro .intro-links { gap:9px; }
 .business-intro .intro-links a { font-size:12px; padding:8px 12px; }
 .business-grid, .business-grid.two-columns { grid-template-columns:1fr; gap:7px; }
 .business-grid article { padding:23px 0; }
 .business-grid h3 { font-size:23px; }
 .business-grid p { font-size:15px; }
 .business-faq summary { font-size:17px; line-height:1.65; }
 .business-faq details p { margin-left:0; font-size:15px; }
 .article-body h2 { font-size:25px; }
 .article-body p, .article-body li { font-size:15px; }
 .editorial-page .editorial-hero h1 { font-size:clamp(29px,8.5vw,43px); line-height:1.4; }
 .editorial-page .content-heading h2 { font-size:30px; line-height:1.4; }
 .editorial-page .editorial-hero-inner { gap:27px; }
 .content-heading p { font-size:15px; }
}
