:root {
  --navy: #123c56;
  --navy-deep: #0b2c40;
  --ink: #162634;
  --muted: #5c6970;
  --cream: #f3f2ed;
  --paper: #fbfbf8;
  --line: #d7d5cc;
  --gold: #d7a35b;
  --pale: #e7f0f4;
  --green: #4b8b72;
  --max: 1240px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: Arial, Helvetica, sans-serif; font-size: 16px; line-height: 1.5; }
a { color: inherit; }
.skip-link { position: fixed; left: 16px; top: -48px; z-index: 50; padding: 9px 12px; color: #fff; background: var(--navy); transition: top .2s; }
.skip-link:focus { top: 12px; }
.site-header { position: sticky; z-index: 20; top: 0; display: flex; align-items: center; justify-content: space-between; gap: 32px; height: 78px; padding: 0 max(28px, calc((100vw - var(--max)) / 2)); border-bottom: 1px solid rgba(18,60,86,.13); background: rgba(251,251,248,.94); backdrop-filter: blur(14px); }
.brand { display: inline-flex; width: 129px; align-items: center; }
.brand img { width: 100%; height: auto; display: block; }
nav { display: flex; gap: 27px; margin-left: auto; }
nav a { text-decoration: none; font-size: 14px; font-weight: 700; color: #40505b; }
nav a:hover, .text-link:hover { color: var(--navy); }
.button { display: inline-flex; justify-content: center; align-items: center; min-height: 50px; padding: 0 22px; color: white; background: var(--navy); border: 1px solid var(--navy); border-radius: 2px; text-decoration: none; font-size: 15px; font-weight: 700; transition: background .2s, transform .2s; }
.button:hover { background: var(--navy-deep); transform: translateY(-1px); }
.button-small { min-height: 39px; padding: 0 15px; font-size: 13px; }
.button-light { color: var(--navy); background: white; border-color: white; }
.button-light:hover { background: var(--cream); }
.text-link { display: inline-flex; gap: 8px; align-items: center; color: var(--navy); font-weight: 700; text-decoration: none; }
.text-link span { color: var(--gold); font-size: 22px; line-height: 1; }
.eyebrow { display: flex; align-items: center; gap: 9px; margin: 0 0 18px; color: #a66b2a; font-size: 12px; letter-spacing: .08em; font-weight: 700; text-transform: uppercase; }
.eyebrow span { width: 22px; height: 1px; background: var(--gold); }
h1, h2, h3, p { margin-top: 0; }
h1, h2 { letter-spacing: -.04em; line-height: .99; }
h1 { max-width: 670px; margin-bottom: 28px; font-size: clamp(46px, 5.2vw, 76px); }
h1 em, h2 em { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
h2 { font-size: clamp(36px, 4vw, 58px); }
.hero { display: grid; grid-template-columns: minmax(0, 1.04fr) minmax(480px, .96fr); gap: 74px; max-width: var(--max); margin: 0 auto; padding: 100px 28px 92px; }
.hero-lead { max-width: 625px; margin-bottom: 28px; color: #45545d; font-size: 20px; line-height: 1.45; }
.hero-actions { display: flex; gap: 27px; align-items: center; margin-bottom: 60px; }
.hero-assurance { display: grid; grid-template-columns: repeat(3, 1fr); max-width: 630px; border-top: 1px solid var(--line); }
.hero-assurance div { padding: 17px 16px 0 0; }
.hero-assurance div + div { padding-left: 16px; border-left: 1px solid var(--line); }
.hero-assurance strong, .hero-assurance span { display: block; }
.hero-assurance strong { color: var(--navy); font-size: 14px; }
.hero-assurance span { margin-top: 4px; color: var(--muted); font-size: 12px; line-height: 1.3; }
.hero-visual { position: relative; display: flex; align-items: center; min-height: 570px; padding: 34px; overflow: hidden; border: 1px solid #cfdbdf; background: linear-gradient(140deg, #edf4f5 0%, #f9faf7 55%, #e7f0f3 100%); }
.hero-visual:before { content: ''; position: absolute; inset: 20px; border: 1px solid rgba(18,60,86,.1); pointer-events: none; }
.decision-canvas { position: relative; z-index: 1; width: 100%; background: rgba(255,255,255,.95); border: 1px solid #c9d8dd; box-shadow: 0 20px 45px rgba(18,60,86,.11); }
.canvas-bar { display: flex; justify-content: space-between; padding: 13px 18px; border-bottom: 1px solid #dbe4e6; color: #65767d; font-size: 10px; }.canvas-product { color: var(--navy); font-weight: 700; letter-spacing: .03em; }.canvas-product i { display: inline-block; width: 5px; height: 5px; margin: 0 5px 1px; border-radius: 50%; background: var(--gold); }.canvas-ref { color: #839198; }
.decision-head { display: flex; justify-content: space-between; gap: 16px; padding: 25px 25px 20px; }.canvas-label { display: block; margin-bottom: 8px; color: #a66b2a; font-size: 9px; letter-spacing: .08em; font-weight: 700; }.decision-head strong { display: block; color: var(--ink); font-size: 24px; line-height: 1.1; letter-spacing: -.025em; }.decision-head p { max-width: 365px; margin: 9px 0 0; color: var(--muted); font-size: 12px; line-height: 1.4; }.approval-state { display: flex; flex: 0 0 auto; align-items: center; gap: 8px; align-self: flex-start; padding: 10px 11px; color: #8c5e26; background: #fcf5ea; border: 1px solid #edd5af; font-size: 11px; line-height: 1.15; }.approval-state i { width: 8px; height: 8px; border-radius: 50%; background: var(--gold); }.approval-state b { color: #714e23; }
.route-panel { display: grid; grid-template-columns: .95fr .7fr .95fr .85fr .95fr; align-items: center; margin: 0 25px; padding: 20px 15px; background: #f3f7f7; border-top: 1px solid #d9e5e7; border-bottom: 1px solid #d9e5e7; }.route-point { position: relative; min-height: 54px; padding-left: 16px; }.route-point:before { content: ''; position: absolute; left: 0; top: 5px; width: 7px; height: 7px; border-radius: 50%; background: var(--navy); }.route-point.transit:before { background: var(--gold); }.route-point.end:before { background: #84a9b6; }.route-point span, .route-point small { display: block; }.route-point span { color: var(--navy); font-size: 12px; font-weight: 700; }.route-point small { margin-top: 4px; color: #718087; font-size: 10px; line-height: 1.25; }.route-line { position: relative; height: 1px; background: #96b3bd; }.route-line:before { content: ''; position: absolute; top: -3px; left: 0; width: 7px; height: 7px; border-radius: 50%; background: #96b3bd; }.route-line:after { content: ''; position: absolute; top: -3px; right: 0; width: 7px; height: 7px; border-radius: 50%; background: #96b3bd; }.route-line b { position: absolute; top: -19px; left: 50%; min-width: max-content; transform: translateX(-50%); color: #5e7078; font-size: 9px; font-weight: 400; }.route-line.muted { background: repeating-linear-gradient(90deg, #c5d2d6 0 5px, transparent 5px 9px); }.route-line.muted:before, .route-line.muted:after { background: #c5d2d6; }
.decision-facts { display: grid; grid-template-columns: .82fr 1.23fr 1fr; margin: 0 25px; border-bottom: 1px solid #dbe4e6; }.decision-facts div { min-height: 89px; padding: 17px 16px 14px 0; }.decision-facts div + div { padding-left: 16px; border-left: 1px solid #dbe4e6; }.decision-facts span, .decision-facts strong, .decision-facts small { display: block; }.decision-facts span { color: #78878e; font-size: 9px; text-transform: uppercase; letter-spacing: .06em; }.decision-facts strong { margin: 6px 0 4px; color: var(--navy); font-size: 12px; line-height: 1.2; }.decision-facts small { color: #718087; font-size: 10px; line-height: 1.2; }.canvas-footer { display: flex; justify-content: space-between; gap: 18px; padding: 13px 25px 16px; color: #62747c; font-size: 10px; }.canvas-footer i { display: inline-block; width: 6px; height: 6px; margin-right: 5px; border-radius: 50%; background: var(--green); }
.statement-section { display: grid; grid-template-columns: 90px 1.14fr .86fr; gap: 45px; max-width: var(--max); margin: 0 auto; padding: 90px 28px; border-top: 1px solid var(--line); }.section-number { margin: 5px 0 0; color: var(--gold); font-size: 13px; font-weight: 700; }.statement-section h2 { margin-bottom: 0; font-size: clamp(34px, 3.7vw, 52px); }.statement-side { align-self: end; margin-bottom: 4px; color: #45545d; font-size: 17px; }
.decision-lifecycle { padding: 100px max(28px, calc((100vw - var(--max)) / 2)); background: var(--navy); color: white; }.section-intro { max-width: 720px; }.decision-lifecycle .eyebrow { color: #e8bc7d; }.decision-lifecycle h2 { margin-bottom: 20px; }.decision-lifecycle .section-intro > p:last-child { max-width: 620px; color: #c8d9df; font-size: 18px; }.lifecycle-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 0; max-width: var(--max); margin: 62px auto 0; padding: 0; list-style: none; border-top: 1px solid rgba(220,232,235,.25); }.lifecycle-grid li { position: relative; min-height: 252px; padding: 25px 22px 14px 0; }.lifecycle-grid li + li { padding-left: 22px; border-left: 1px solid rgba(220,232,235,.25); }.lifecycle-grid li:not(:last-child):after { content: ''; position: absolute; z-index: 2; top: -3px; right: -3px; width: 6px; height: 6px; background: var(--gold); border-radius: 50%; }.lifecycle-grid span { color: #e3b46f; font-size: 12px; font-weight: 700; }.lifecycle-grid h3 { margin: 35px 0 10px; font-size: 22px; letter-spacing: -.03em; }.lifecycle-grid p { color: #c8d9df; font-size: 14px; line-height: 1.5; }
.comparison-section { max-width: var(--max); margin: 0 auto; padding: 110px 28px 105px; }.comparison-head { display: grid; grid-template-columns: .95fr 1.05fr; column-gap: 70px; align-items: end; margin-bottom: 48px; }.comparison-head .eyebrow, .comparison-head h2 { grid-column: 1; }.comparison-head p:last-child { grid-column: 2; grid-row: 1 / span 2; margin: 0 0 6px; color: #45545d; font-size: 18px; }.comparison-head h2 { margin-bottom: 0; }.comparison-table { border-top: 2px solid var(--navy); }.comparison-row { display: grid; grid-template-columns: 1.05fr 1fr 1.12fr 1.4fr; border-bottom: 1px solid var(--line); }.comparison-row > * { display: flex; align-items: center; min-height: 91px; padding: 18px 18px; border-left: 1px solid var(--line); color: #4e5b63; font-size: 14px; }.comparison-row > *:first-child { padding-left: 0; border-left: 0; color: var(--ink); font-size: 14px; }.comparison-labels > * { min-height: 47px; color: var(--navy); font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }.comparison-row .aidecis-column { color: var(--navy); background: var(--pale); font-weight: 700; }.comparison-labels .aidecis-column { color: white; background: var(--navy); }
.supply-section { display: grid; grid-template-columns: .82fr 1.18fr; gap: 90px; padding: 105px max(28px, calc((100vw - var(--max)) / 2)); background: var(--cream); }.supply-copy h2 { margin-bottom: 25px; }.supply-copy > p:not(.eyebrow) { max-width: 435px; color: #495861; font-size: 17px; }.supply-copy .text-link { margin-top: 17px; }.use-case-stack { border-top: 1px solid #bbb9b1; }.use-case { display: grid; grid-template-columns: 62px 1fr; column-gap: 17px; padding: 22px 0; border-bottom: 1px solid #cfcdc4; }.use-case .case-no { color: #ad7839; font-size: 13px; font-weight: 700; }.use-case small { color: #67767d; font-size: 10px; letter-spacing: .08em; font-weight: 700; }.use-case h3 { margin: 4px 0 0; font-size: 22px; letter-spacing: -.025em; }.use-case p { grid-column: 2; margin: 9px 0 0; color: #526069; font-size: 14px; }.use-case.selected h3 { color: var(--navy); }
.platform-section { padding: 107px max(28px, calc((100vw - var(--max)) / 2)); }.platform-intro { max-width: 720px; }.platform-intro h2 { margin-bottom: 19px; }.platform-intro > p:last-child { color: #4b5a63; font-size: 18px; }.architecture { max-width: var(--max); margin: 62px auto 0; }.arch-cloud { padding: 24px; background: var(--pale); border: 1px solid #b9ced6; }.arch-tag { display: block; margin-bottom: 17px; color: #a66b2a; font-size: 10px; letter-spacing: .08em; font-weight: 700; }.arch-items { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }.arch-items > div, .arch-flow > div { min-height: 104px; padding: 17px; background: white; border: 1px solid #cad7dc; }.arch-items b, .arch-items small, .arch-flow b, .arch-flow small { display: block; }.arch-items b, .arch-flow b { color: var(--navy); font-size: 14px; }.arch-items small, .arch-flow small { margin-top: 6px; color: var(--muted); font-size: 11px; line-height: 1.35; }.arch-link { display: flex; align-items: center; gap: 12px; width: 210px; margin: 0 auto; color: #a66b2a; font-size: 10px; font-weight: 700; }.arch-link i { display: block; width: 1px; height: 56px; background: var(--gold); }.arch-customer { padding: 24px; border: 1px solid #d1d0c9; }.arch-flow { display: grid; grid-template-columns: 1fr 1.25fr 1fr; gap: 38px; align-items: center; }.arch-gateway { position: relative; color: white; background: var(--navy) !important; border-color: var(--navy) !important; }.arch-gateway:before, .arch-gateway:after { content: ''; position: absolute; top: 50%; width: 37px; height: 1px; background: var(--gold); }.arch-gateway:before { right: 100%; }.arch-gateway:after { left: 100%; }.arch-gateway b { color: white; }.arch-gateway small { color: #d9e8ec; }
.europe-section { display: grid; grid-template-columns: 150px 1fr 1fr; gap: 55px; padding: 100px max(28px, calc((100vw - var(--max)) / 2)); color: white; background: var(--navy-deep); }.europe-mark { align-self: start; color: var(--gold); font-family: Georgia, serif; font-size: 85px; line-height: .8; }.europe-section .eyebrow { color: #e4b675; }.europe-section h2 { margin-bottom: 22px; }.europe-section > div:nth-child(2) > p:last-child { color: #c9d9df; font-size: 17px; }.europe-points { border-top: 1px solid rgba(226,239,241,.22); }.europe-points div { position: relative; padding: 18px 0 16px 34px; border-bottom: 1px solid rgba(226,239,241,.22); }.europe-points span { position: absolute; top: 19px; left: 0; color: var(--gold); font-size: 11px; font-weight: 700; }.europe-points strong { display: block; font-size: 15px; }.europe-points p { margin: 4px 0 0; color: #c9d9df; font-size: 13px; line-height: 1.4; }
.closing { padding: 125px 28px; text-align: center; background: var(--cream); }.closing .eyebrow { justify-content: center; }.closing h2 { margin-bottom: 24px; }.closing > p:not(.eyebrow) { max-width: 575px; margin: 0 auto 30px; color: #526069; font-size: 18px; }.closing .button { margin-top: 4px; }.contact-details { display: grid; gap: 7px; margin: 31px auto 0; color: #65747c; font-size: 13px; line-height: 1.45; }.contact-details a { color: var(--navy); font-weight: 700; }.contact-details address { margin: 0; font-style: normal; }
footer { display: grid; grid-template-columns: 130px 1fr auto; gap: 30px; align-items: center; padding: 26px max(28px, calc((100vw - var(--max)) / 2)); color: #65747c; font-size: 12px; background: white; border-top: 1px solid var(--line); }footer img { width: 102px; height: auto; }footer span:last-child { text-align: right; }
@media (max-width: 940px) { nav { display: none; }.hero { grid-template-columns: 1fr; gap: 45px; padding-top: 68px; }.hero-visual { max-width: 620px; }.statement-section, .supply-section, .europe-section { grid-template-columns: 1fr; gap: 28px; }.statement-section { grid-template-columns: 45px 1fr; }.statement-side { grid-column: 2; }.comparison-head { display: block; }.comparison-head p:last-child { margin-top: 25px; }.europe-mark { display: none; }.europe-points { max-width: 600px; }.arch-items { grid-template-columns: 1fr 1fr; }.arch-flow { gap: 28px; } }
@media (max-width: 680px) { .site-header { height: 68px; padding: 0 18px; }.brand { width: 108px; }.site-header .button { display: none; }.hero, .comparison-section, .platform-section { padding-right: 18px; padding-left: 18px; }.hero { padding-top: 55px; padding-bottom: 55px; }.hero-actions { flex-direction: column; align-items: flex-start; gap: 18px; margin-bottom: 42px; }.hero-assurance { grid-template-columns: 1fr; }.hero-assurance div + div { padding-left: 0; border-left: 0; }.hero-visual { min-height: 445px; }.control-orb { top: 129px; left: 49px; width: 214px; height: 214px; }.side-card { top: 288px; right: 19px; width: 160px; }.label-one { top: 38px; right: 19px; }.label-two { bottom: 58px; left: 19px; }.label-three { display: none; }.line-one { top: 118px; left: 105px; width: 190px; }.line-two { top: 288px; left: 70px; width: 210px; }.line-three { display:none; }.visual-caption { right: 18px; left: 18px; }.statement-section { padding: 58px 18px; }.statement-section h2 { font-size: 36px; }.decision-lifecycle, .supply-section, .europe-section { padding: 64px 18px; }.lifecycle-grid { grid-template-columns: 1fr; margin-top: 38px; }.lifecycle-grid li, .lifecycle-grid li + li { min-height: 0; padding: 20px 0; border-left: 0; border-bottom: 1px solid rgba(220,232,235,.25); }.lifecycle-grid li:not(:last-child):after { display: none; }.lifecycle-grid h3 { margin: 13px 0 7px; }.comparison-row { grid-template-columns: 1fr; }.comparison-labels { display: none; }.comparison-row > * { min-height: auto; padding: 12px 0; border-left: 0; }.comparison-row > *:first-child { padding-top: 19px; }.comparison-row .aidecis-column { padding: 14px; margin: 0 -12px 12px; }.use-case { grid-template-columns: 42px 1fr; }.arch-items, .arch-flow { grid-template-columns: 1fr; }.arch-items > div, .arch-flow > div { min-height: auto; }.arch-link { margin-left: 16px; }.arch-gateway:before, .arch-gateway:after { display: none; }footer { grid-template-columns: 1fr; gap: 13px; padding: 26px 18px; }footer span:last-child { text-align: left; } }

@media (max-width: 680px) { .hero-visual { min-height: 0; padding: 18px; }.decision-head { padding: 20px 17px 16px; }.decision-head strong { font-size: 21px; }.decision-head p { font-size: 11px; }.approval-state { display: none; }.route-panel { grid-template-columns: 1fr; gap: 11px; margin: 0 17px; padding: 15px; }.route-line { width: 1px; height: 15px; margin-left: 3px; background: #96b3bd; }.route-line:before, .route-line:after { top: auto; right: auto; left: -3px; }.route-line:before { top: 0; }.route-line:after { bottom: 0; }.route-line b { top: -1px; left: 14px; transform: none; }.route-line.muted { background: repeating-linear-gradient(180deg, #c5d2d6 0 5px, transparent 5px 9px); }.route-point { min-height: 0; }.decision-facts { grid-template-columns: 1fr; margin: 0 17px; }.decision-facts div { min-height: 0; padding: 12px 0; }.decision-facts div + div { padding-left: 0; border-left: 0; border-top: 1px solid #dbe4e6; }.canvas-footer { flex-direction: column; gap: 5px; padding: 12px 17px 14px; } }

.demo-section { display: grid; grid-template-columns: .58fr 1.42fr; gap: 62px; align-items: center; padding: 108px max(28px, calc((100vw - var(--max)) / 2)); background: var(--cream); }.demo-copy h2 { margin-bottom: 22px; }.demo-copy > p:not(.eyebrow) { color: #4b5a63; font-size: 17px; }.demo-copy ul { margin: 25px 0 28px; padding: 0; list-style: none; border-top: 1px solid #cfcdc4; }.demo-copy li { position: relative; padding: 11px 0 11px 19px; color: #44545d; font-size: 14px; border-bottom: 1px solid #cfcdc4; }.demo-copy li:before { content: ''; position: absolute; top: 17px; left: 1px; width: 7px; height: 7px; border-radius: 50%; background: var(--gold); }.demo-launch-button { display: inline-flex; align-items: center; gap: 10px; }.demo-launch-panel { position: relative; min-height: 390px; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 58px 62px; color: white; overflow: hidden; background: linear-gradient(135deg, #12384e, #1a4c67); box-shadow: 0 20px 42px rgba(18,60,86,.16); }.demo-launch-panel:before { content: ''; position: absolute; right: -108px; bottom: -170px; width: 430px; height: 430px; border: 1px solid rgba(236,197,133,.48); border-radius: 50%; }.demo-launch-panel:after { content: ''; position: absolute; right: 66px; top: 54px; width: 92px; height: 92px; border-radius: 50%; background: rgba(236,197,133,.12); box-shadow: 0 0 0 29px rgba(236,197,133,.05), 0 0 0 59px rgba(236,197,133,.025); }.demo-panel-eyebrow, .demo-launch-panel strong, .demo-launch-panel p, .demo-panel-steps, .demo-launch-panel .text-link { position: relative; z-index: 1; }.demo-panel-eyebrow { color: #e7bd7d; font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }.demo-panel-eyebrow i { display: inline-block; width: 7px; height: 7px; margin-right: 7px; border-radius: 50%; background: #7ec4a1; }.demo-launch-panel strong { max-width: 420px; margin: 18px 0 15px; font-family: Georgia, serif; font-size: 39px; line-height: 1.04; }.demo-launch-panel p { max-width: 490px; color: #cad9df; font-size: 16px; line-height: 1.55; }.demo-panel-steps { display: flex; gap: 19px; margin: 32px 0 26px; color: #dce7ea; font-size: 11px; font-weight: 700; letter-spacing: .04em; }.demo-panel-steps span + span { padding-left: 19px; border-left: 1px solid rgba(220,231,234,.25); }.demo-launch-panel .text-link { color: white; font-weight: 700; }.demo-launch-panel .text-link:hover { color: #e7bd7d; }
@media (max-width: 940px) { .demo-section { grid-template-columns: 1fr; gap: 28px; } }
@media (max-width: 680px) { .demo-section { padding: 64px 18px; }.demo-launch-panel { min-height: 330px; padding: 42px 28px; }.demo-launch-panel strong { font-size: 33px; }.demo-panel-steps { flex-wrap: wrap; gap: 12px; }.demo-panel-steps span + span { padding-left: 12px; } }
