/* Exania / Platform. Scoped visual system. */
.xp-page{overflow:clip;background:#080c10;color:#f3f5f2;font-family:'Manrope','DM Sans',sans-serif}
.xp-page *, .xp-page *::before, .xp-page *::after{box-sizing:border-box}
.xp-page h1,.xp-page h2,.xp-page h3,.xp-page p{margin-top:0}
.xp-page h1,.xp-page h2,.xp-page h3{font-family:'Manrope','DM Sans',sans-serif;letter-spacing:-.065em;line-height:1.08}
.xp-page a{text-decoration:none}
.xp-page svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.xp-page button{font-family:inherit;cursor:pointer}
.xp-page button:focus-visible,.xp-page a:focus-visible{outline:2px solid #a5efdf;outline-offset:5px}
.xp-page .shell{width:calc(100% - clamp(36px,8.4vw,152px));max-width:1480px;margin-inline:auto}
.xp-page .xp-light{background:#e8ebe7;color:#0c1518}
.xp-page .xp-dark{background:#090d11;color:#f2f5f2}
.xp-page .xp-section{padding:clamp(76px,8.5vw,142px) 0 clamp(90px,9vw,160px);position:relative}
.xp-section-label,.xp-hero-meta,.xp-hero-bottom,.xp-kicker,.xp-num,.xp-outcome-end,.xp-arch-top,.xp-arch-foot,.xp-arch-detail>span,.xp-arch-detail>div span,.xp-stage-label,.xp-stage-mini span,.xp-technical-strip,.xp-model-grid>a>span,.xp-model-grid>a>small,.xp-phase-top,.xp-phase-deliverable>span,.xp-deploy-status,.xp-deploy-details span,.xp-governance-grid article>span,.xp-governance-note>div span,.xp-scenario-grid article>span,.xp-aside-top,.xp-integration-terminal>span,.xp-final-side>span,.xp-final-side>small,.xp-fine{font-family:'IBM Plex Mono',monospace;letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:500}
.xp-section-label{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-bottom:18px;border-bottom:1px solid currentColor;opacity:.65;margin-bottom:clamp(72px,8vw,132px)}
.xp-section-heading{margin-bottom:clamp(46px,5.5vw,88px)}
.xp-section-heading h2,.xp-intro-grid h2{font-size:clamp(43px,5.6vw,90px);line-height:1.065;font-weight:600;margin:0}
.xp-section-heading h2 em,.xp-intro-grid h2 em{font-style:normal;color:#768f89}
.xp-dark .xp-section-heading h2 em{color:#8fc0b6}
.xp-heading-split{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);align-items:end;gap:7vw}
.xp-heading-split>p{font-size:15px;line-height:1.9;max-width:370px;color:#56615f;margin:0}
.xp-dark .xp-heading-split>p{color:#a6b2b4}
.xp-fine{font-size:10px;line-height:1.7;letter-spacing:.025em;text-transform:none;color:#94a5a6;margin:20px 0 0;max-width:840px}
.xp-text-link,.xp-technical-strip a{display:inline-flex;align-items:center;gap:20px;border-bottom:1px solid #343e3d;padding-bottom:12px;font-size:13px;font-weight:700;color:inherit;transition:gap .2s}
.xp-text-link:hover,.xp-technical-strip a:hover{gap:27px}
.xp-btn{display:inline-flex;align-items:center;justify-content:space-between;min-height:53px;padding:0 17px;gap:28px;font-size:12px;font-weight:700;letter-spacing:.005em;transition:background .2s,border-color .2s,color .2s,transform .2s}
.xp-btn:hover{transform:translateY(-2px)}
.xp-btn-primary{color:#091215;background:#f2f3f0;border:1px solid #f2f3f0}
.xp-btn-primary:hover{background:#9be5d5;border-color:#9be5d5}
.xp-btn-outline{color:#f0f5f2;background:rgba(10,20,22,.18);border:1px solid rgba(244,249,247,.45)}
.xp-btn-outline:hover{background:rgba(240,250,247,.1);border-color:#fff}
.xp-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
/* Opening */
.xp-hero{min-height:min(980px,100svh);min-height:max(730px,100svh);padding-top:78px;position:relative;overflow:hidden;background:radial-gradient(circle at 83% 50%,rgba(41,85,95,.23),transparent 42%),#070a0d}
.xp-hero-grid{position:absolute;inset:0;pointer-events:none;opacity:.33;background-image:linear-gradient(rgba(183,204,200,.065) 1px,transparent 1px),linear-gradient(90deg,rgba(183,204,200,.065) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(90deg,transparent,black 38%,black 80%,transparent)}
.xp-hero-wrap{position:relative;min-height:calc(max(730px,100svh) - 78px);display:flex;flex-direction:column}
.xp-hero-meta{display:flex;justify-content:space-between;gap:12px;opacity:.54;padding-top:34px;font-size:9px}
.xp-hero-layout{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(20px,3vw,65px);align-items:center;flex:1;min-height:560px}
.xp-hero-copy{padding:55px 0 66px;z-index:2}
.xp-kicker{display:flex;align-items:center;gap:12px;color:#b1c7c2;margin-bottom:27px;font-size:10px}
.xp-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#8bdfc9;box-shadow:0 0 0 5px rgba(137,209,186,.11)}
.xp-hero h1{font-size:clamp(58px,6.85vw,111px);font-weight:600;line-height:.99;letter-spacing:-.088em;margin:0 0 34px;white-space:nowrap}
.xp-hero h1 em{font-style:normal;color:#accfca}
.xp-hero-lede{max-width:590px;font-size:clamp(16px,1.35vw,20px);color:#e0e8e5;line-height:1.66;letter-spacing:-.023em;margin:0 0 19px}
.xp-hero-sub{max-width:535px;font-size:13px;line-height:1.8;color:#94a8a7;margin-bottom:38px}
.xp-hero-schematic{position:relative;height:min(570px,45vw);min-height:410px;display:grid;place-items:center;isolation:isolate}
.xp-hero-schematic::before{content:'';position:absolute;inset:12%;border-radius:50%;background:radial-gradient(circle,rgba(104,168,158,.22),transparent 61%);filter:blur(16px)}
.xp-orbit{position:absolute;border:1px solid rgba(143,211,199,.26);border-radius:50%;width:75%;aspect-ratio:1;animation:xp-orbit-turn 35s linear infinite}
.xp-orbit::before{content:'';position:absolute;left:50%;top:-4px;width:7px;height:7px;border-radius:50%;background:#a5dbcb;box-shadow:0 0 18px #a5dbcb}
.xp-orbit-one{transform:rotateX(68deg) rotateZ(21deg)}
.xp-orbit-two{width:88%;animation-duration:46s;animation-direction:reverse;transform:rotateY(64deg) rotateZ(21deg);border-color:rgba(155,170,216,.22)}
.xp-orbit-three{width:65%;animation-duration:54s;border-style:dashed;opacity:.68;transform:rotateX(33deg) rotateZ(45deg)}
@keyframes xp-orbit-turn{to{rotate:360deg}}
.xp-orbit-core{position:relative;z-index:2;width:45%;aspect-ratio:1;display:grid;place-items:center;background:radial-gradient(circle,rgba(106,180,176,.11),transparent 75%);border-radius:50%}
.xp-orbit-core img{width:94%;height:94%;object-fit:contain;filter:drop-shadow(0 0 42px rgba(127,200,196,.16));animation:xp-breathe 8s ease-in-out infinite}
@keyframes xp-breathe{50%{transform:scale(1.035) translateY(-4px)}}
.xp-orbit-chip{position:absolute;z-index:2;padding:10px 13px;background:rgba(8,14,18,.84);border:1px solid rgba(195,235,225,.25);backdrop-filter:blur(9px);font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.09em;color:#c0d1ca}
.chip-a{top:17%;left:0}.chip-b{right:0;top:38%}.chip-c{bottom:21%;left:5%}
.xp-orbit-base{position:absolute;bottom:4%;right:0;left:0;border-top:1px solid rgba(212,243,236,.2);padding-top:12px;display:flex;justify-content:space-between;color:#8aa3a0;font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.12em}
.xp-hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 0 22px;border-top:1px solid rgba(233,240,237,.18);color:#81918f;font-size:9px}
.xp-hero-bottom a{display:inline-flex;gap:14px;align-items:center;color:#d3e3dc}
.xp-hero-bottom svg{width:15px;height:15px}
/* Chapter links */
.xp-chapter-nav{position:sticky;top:78px;background:rgba(12,17,20,.96);border-bottom:1px solid rgba(230,242,238,.14);z-index:60;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.xp-chapter-row{display:flex;gap:clamp(20px,2.8vw,46px);align-items:center;overflow:auto;scrollbar-width:none;min-height:53px}
.xp-chapter-row::-webkit-scrollbar{display:none}
.xp-chapter-row a{display:inline-flex;align-items:center;min-height:52px;white-space:nowrap;font-size:10px;font-weight:700;letter-spacing:.035em;color:#86999a;border-bottom:2px solid transparent;transition:color .18s,border .18s}
.xp-chapter-row a:hover,.xp-chapter-row a.is-active{color:#f0f5f2;border-bottom-color:#9ce4d5}
/* Overview */
.xp-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,8vw,120px);margin-bottom:95px}
.xp-intro-body{max-width:560px;padding-top:3px}
.xp-intro-body p{font-size:15px;line-height:1.95;letter-spacing:-.015em;color:#3f4b4a;margin:0 0 19px}
.xp-intro-body .xp-text-link{margin-top:18px}
.xp-outcome-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #a8b3ae;border-bottom:1px solid #a8b3ae}
.xp-outcome-grid article{min-height:330px;padding:30px 26px 28px 0;display:flex;flex-direction:column;justify-content:flex-start}
.xp-outcome-grid article+article{padding-left:24px;border-left:1px solid #a8b3ae}
.xp-num{color:#60716d;font-size:10px;margin-bottom:60px}
.xp-outcome-grid h3{font-size:clamp(23px,2vw,31px);margin:0 0 17px;letter-spacing:-.065em}
.xp-outcome-grid p{color:#485653;font-size:13px;line-height:1.8;margin:0 0 35px}
.xp-outcome-end{margin-top:auto;font-size:9px;color:#6e827d}
/* Architecture */
.xp-architecture{background:radial-gradient(circle at 21% 50%,rgba(29,63,68,.20),transparent 40%),#090d11}
.xp-arch-grid{display:grid;grid-template-columns:1.02fr .98fr;border:1px solid rgba(198,230,226,.15)}
.xp-arch-visual{min-height:650px;position:relative;background:linear-gradient(125deg,#0c171b,#091014);overflow:hidden;border-right:1px solid rgba(198,230,226,.15);display:flex;flex-direction:column}
.xp-arch-top,.xp-arch-foot{display:flex;justify-content:space-between;gap:10px;padding:24px 25px;color:#a3b9b4;font-size:9px}
.xp-arch-foot{margin-top:auto}
.xp-arch-net{position:relative;height:485px;width:100%;max-width:620px;margin:auto;display:grid;place-items:center;isolation:isolate}
.xp-arch-net::before{content:'';position:absolute;inset:14%;background:radial-gradient(ellipse,rgba(44,113,111,.22),transparent 63%)}
.xp-arch-lines{position:absolute;inset:0;width:100%;height:100%;stroke:#527d7f;stroke-opacity:.7;stroke-width:1.1;fill:none;stroke-dasharray:3 6;animation:xp-lineflow 26s linear infinite}
@keyframes xp-lineflow{to{stroke-dashoffset:-200}}
.xp-core{position:absolute;width:145px;height:145px;border-radius:50%;border:1px solid rgba(156,225,205,.36);background:rgba(7,18,22,.95);box-shadow:0 0 85px rgba(75,155,147,.18);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;z-index:2}
.xp-core img{width:74px;height:74px;object-fit:contain}
.xp-core span{font:700 12px 'Manrope',sans-serif;letter-spacing:.12em}
.xp-node{position:absolute;padding:11px 14px;border:1px solid rgba(158,191,190,.20);background:#0e1b1f;color:#829da0;font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.1em;display:flex;align-items:center;gap:10px;transition:background .25s,border .25s,color .25s}
.xp-node b{color:#d6e5df;font-weight:500}
.xp-node.selected{border-color:#9eebd4;color:#d7f1e7;background:#1b3a3b;box-shadow:0 0 24px rgba(140,214,192,.15)}
.xp-node.n1{left:13%;top:10%}.xp-node.n2{right:10%;top:10%}.xp-node.n3{left:2%;top:48%}.xp-node.n4{right:0;top:48%}.xp-node.n5{left:17%;bottom:6%}.xp-node.n6{right:11%;bottom:6%}
.xp-arch-panel{display:flex;flex-direction:column;min-width:0}
.xp-arch-list{display:grid;grid-template-columns:1fr 1fr}
.xp-arch-list button{min-height:100px;padding:20px;display:grid;grid-template-columns:29px 1fr 18px;align-items:center;gap:10px;border:0;border-right:1px solid rgba(198,230,226,.13);border-bottom:1px solid rgba(198,230,226,.13);color:#aebcbe;text-align:left;background:transparent;transition:background .2s,color .2s}
.xp-arch-list button:nth-child(even){border-right:0}
.xp-arch-list button.selected,.xp-arch-list button:hover{background:rgba(114,180,167,.1);color:#f1f6f3}
.xp-arch-list button>span{font:500 10px 'IBM Plex Mono',monospace;color:#8cadac}
.xp-arch-list button strong{font-size:13px;line-height:1.35;letter-spacing:-.02em;font-weight:600}
.xp-arch-list button svg{width:14px;height:14px;opacity:.6}
.xp-arch-detail{padding:40px 38px 48px;margin-top:auto;min-height:240px}
.xp-arch-detail>span{color:#a6d4c9;font-size:10px}
.xp-arch-detail h3{font-size:clamp(25px,2.8vw,39px);font-weight:600;margin:17px 0 17px}
.xp-arch-detail p{font-size:13px;line-height:1.85;color:#adbfc0;max-width:500px;margin-bottom:22px}
.xp-arch-detail>div{display:flex;gap:8px;flex-wrap:wrap}
.xp-arch-detail>div span{padding:9px 10px;border:1px solid rgba(150,190,182,.27);font-size:9px;color:#a6cac1}
/* Modality */
.xp-modality-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(35px,6vw,95px)}
.xp-modality-list{border-top:1px solid #abb8b3}
.xp-modality-list button{width:100%;min-height:90px;border:0;border-bottom:1px solid #abb8b3;background:transparent;color:#283431;display:flex;gap:15px;justify-content:space-between;align-items:center;text-align:left;padding:20px 18px;transition:background .2s,padding .2s}
.xp-modality-list button span{font:600 12px 'IBM Plex Mono',monospace;letter-spacing:.02em}
.xp-modality-list button:hover,.xp-modality-list button.selected{background:#d6ded8;padding-left:25px}
.xp-modality-list button svg{width:15px;height:15px}
.xp-modality-stage{min-height:490px;padding:30px 36px;background:#0b1419;color:#f1f4f2;position:relative;overflow:hidden;display:flex;flex-direction:column}
.xp-stage-label{display:flex;justify-content:space-between;gap:15px;position:relative;z-index:2;color:#9ab5ae;font-size:9px}
.xp-stage-viz{height:220px;position:relative;display:flex;align-items:center;justify-content:center;gap:23px;margin-top:12px}
.xp-databars,.xp-stage-trace{width:29%;height:120px;display:flex;align-items:center;justify-content:space-between;gap:6px;opacity:.85}
.xp-databars i{background:linear-gradient(#a7dacb,#2c6f72);width:4px;height:var(--size,45%);border-radius:2px;animation:xp-bar 4.2s ease-in-out infinite alternate}
.xp-databars i:nth-child(3n){--size:80%;animation-delay:-1s}.xp-databars i:nth-child(4n){--size:25%;animation-delay:-2s}.xp-databars i:nth-child(5n){--size:65%;animation-delay:-.5s}
@keyframes xp-bar{to{height:20%}}
.xp-stage-center{width:118px;height:118px;flex-shrink:0;border-radius:50%;background:radial-gradient(circle,rgba(123,220,201,.18),rgba(20,40,43,.15));border:1px solid rgba(180,225,215,.30);display:grid;place-items:center}
.xp-stage-center img{width:78%;height:78%;object-fit:contain}
.xp-stage-trace b{width:20%;border:1px solid rgba(126,220,199,.4);height:var(--size,35px);background:rgba(79,155,142,.16)}
.xp-stage-trace b:nth-child(2){--size:80px}.xp-stage-trace b:nth-child(3){--size:54px}.xp-stage-trace b:nth-child(4){--size:105px}
.xp-modality-stage h3{font-size:clamp(26px,3vw,40px);font-weight:600;line-height:1.12;letter-spacing:-.06em;margin:0 0 12px;max-width:620px}
.xp-modality-stage>p{font-size:13px;color:#b5c3c1;line-height:1.8;max-width:610px;margin:0 0 24px}
.xp-stage-mini{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-top:1px solid rgba(231,245,239,.19);padding-top:18px;margin-top:auto}
.xp-stage-mini>div{display:grid;gap:9px}
.xp-stage-mini span{font-size:9px;color:#9cafaa}
.xp-stage-mini strong{font-size:11px;font-weight:500;color:#d8e4df;line-height:1.55}
.xp-technical-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:38px;border-top:1px solid #aab4b0;padding-top:20px;color:#5e6e6a;font-size:9px}
.xp-technical-strip a{font:700 11px 'Manrope',sans-serif;color:#111e1c;white-space:nowrap}
.xp-technical-strip a svg{width:14px;height:14px}
/* Models */
.xp-model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(227,243,236,.19);border-left:1px solid rgba(227,243,236,.19)}
.xp-model-grid a{min-height:345px;position:relative;padding:29px 30px 28px;border-right:1px solid rgba(227,243,236,.19);border-bottom:1px solid rgba(227,243,236,.19);display:flex;flex-direction:column;background:#0a1014;color:#f1f5f3;transition:background .25s}
.xp-model-grid a:hover{background:#172329}
.xp-model-grid a>span{color:#a3c6bd;font-size:10px;margin-bottom:60px}
.xp-model-grid h3{font-size:clamp(23px,2.1vw,32px);font-weight:600;margin:0 0 15px;max-width:265px}
.xp-model-grid p{font-size:12px;color:#a9b9b8;line-height:1.8;max-width:305px;margin:0 0 30px}
.xp-model-grid a>small{font-size:9px;color:#93afa7;margin-top:auto}
.xp-model-grid svg{position:absolute;width:19px;height:19px;bottom:24px;right:24px;color:#c6d8d4}
/* lifecycle */
.xp-lifecycle{display:grid;grid-template-columns:.37fr .63fr;border-top:1px solid #a8b5ae;border-bottom:1px solid #a8b5ae}
.xp-lifecycle-rail{border-right:1px solid #a8b5ae;display:flex;flex-direction:column}
.xp-lifecycle-rail button{border:0;border-bottom:1px solid #a8b5ae;min-height:72px;display:flex;gap:23px;align-items:center;color:#273b35;background:transparent;text-align:left;padding:16px 20px;font-size:16px;font-weight:600;transition:background .2s,padding .2s}
.xp-lifecycle-rail button:last-child{border-bottom:0}
.xp-lifecycle-rail button span{font:500 10px 'IBM Plex Mono',monospace;color:#647e76}
.xp-lifecycle-rail button.selected,.xp-lifecycle-rail button:hover{background:#d5dfd7;padding-left:30px}
.xp-phase-content{padding:55px clamp(26px,4vw,70px);min-height:436px;display:flex;flex-direction:column}
.xp-phase-top{display:flex;justify-content:space-between;gap:12px;color:#61736e;font-size:10px}
.xp-phase-content h3{font-size:clamp(33px,3.65vw,57px);font-weight:600;margin:63px 0 20px;max-width:670px}
.xp-phase-content>p{font-size:15px;line-height:1.8;max-width:650px;color:#495956}
.xp-phase-deliverable{margin-top:auto;display:flex;justify-content:space-between;gap:28px;align-items:start;border-top:1px solid #b4c0bb;padding-top:19px}
.xp-phase-deliverable>span{color:#587167;font-size:10px;min-width:100px}
.xp-phase-deliverable strong{font-size:12px;font-weight:600;max-width:360px;line-height:1.55;text-align:right}
.xp-principle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:46px}
.xp-principle-grid b{font-size:15px;letter-spacing:-.04em}
.xp-principle-grid p{font-size:12px;line-height:1.8;margin:12px 0 0;color:#4c5a57;max-width:400px}
/* Deploy */
.xp-deploy-layout{display:grid;grid-template-columns:.35fr .65fr;border:1px solid rgba(213,239,231,.2)}
.xp-deploy-menu{border-right:1px solid rgba(213,239,231,.2);display:flex;flex-direction:column}
.xp-deploy-menu button{min-height:134px;border:0;border-bottom:1px solid rgba(213,239,231,.2);background:transparent;color:#b3c0bb;padding:25px 26px;display:grid;grid-template-columns:24px 1fr 16px;gap:16px;align-items:center;text-align:left;transition:background .2s}
.xp-deploy-menu button:last-child{border-bottom:0}
.xp-deploy-menu button:hover,.xp-deploy-menu button.selected{background:rgba(127,197,178,.09);color:#f3f6f4}
.xp-deploy-menu button>span{color:#9bbab2;font:500 10px 'IBM Plex Mono',monospace}
.xp-deploy-menu button strong{font-size:clamp(17px,1.8vw,24px);font-weight:600;letter-spacing:-.04em}
.xp-deploy-menu button svg{width:14px;height:14px}
.xp-deploy-stage{padding:29px clamp(28px,4vw,68px) 45px;min-height:526px;display:flex;flex-direction:column}
.xp-deploy-status{display:flex;align-items:center;justify-content:space-between;gap:20px;color:#9bbab4;font-size:9px}
.xp-signal{display:flex;align-items:center;gap:7px}
.xp-signal:before{content:'';display:block;width:6px;height:6px;border-radius:50%;background:#9de1cc}
.xp-deploy-diagram{height:230px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:15px 0 5px}
.xp-deploy-end{border:1px solid rgba(172,218,203,.25);padding:20px 12px;width:23%;min-height:94px;display:flex;flex-direction:column;justify-content:space-between;gap:15px;align-items:center;text-align:center}
.xp-deploy-end span{font:500 9px 'IBM Plex Mono',monospace;color:#97ada9}
.xp-deploy-end strong{font-size:11px;letter-spacing:.06em}
.xp-deploy-middle{border:1px solid rgba(151,219,199,.48);background:rgba(67,123,108,.12);padding:16px 10px;min-height:133px;width:26%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px}
.xp-deploy-middle img{width:70px;height:70px;object-fit:contain}
.xp-deploy-middle b{font:600 9px 'IBM Plex Mono',monospace;color:#c9e4d9;letter-spacing:.045em;text-align:center}
.xp-deploy-route{flex:1;height:1px;background:linear-gradient(90deg,#568e86,#b3e7cd,#568e86);position:relative;min-width:18px}
.xp-deploy-route i{position:absolute;width:4px;height:4px;top:-2px;border-radius:50%;background:#d5ffee;animation:xp-flow 3s linear infinite}
.xp-deploy-route i:nth-child(1){animation-delay:-.4s}.xp-deploy-route i:nth-child(2){animation-delay:-1.1s}.xp-deploy-route i:nth-child(3){animation-delay:-1.8s}.xp-deploy-route i:nth-child(4){animation-delay:-2.5s}.xp-deploy-route i:nth-child(5){animation-delay:-3s}
@keyframes xp-flow{from{left:0;opacity:0}20%{opacity:1}80%{opacity:1}to{left:100%;opacity:0}}
.xp-deploy-stage h3{font-size:clamp(26px,3.1vw,44px);font-weight:600;margin:6px 0 13px}
.xp-deploy-stage p{font-size:13px;line-height:1.8;color:#aebab8;max-width:670px;margin:0 0 26px}
.xp-deploy-details{margin-top:auto;display:flex;gap:10px;flex-wrap:wrap}
.xp-deploy-details span{border:1px solid rgba(188,221,209,.22);padding:10px;color:#9fbbb2;font-size:9px}
/* Governance */
.xp-governance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-left:1px solid #a8b5ae;border-top:1px solid #a8b5ae}
.xp-governance-grid article{padding:28px 28px 40px;min-height:254px;border-right:1px solid #a8b5ae;border-bottom:1px solid #a8b5ae}
.xp-governance-grid article>span{color:#5c756e}
.xp-governance-grid h3{font-size:clamp(23px,2vw,30px);font-weight:600;margin:52px 0 12px}
.xp-governance-grid p{color:#53635d;font-size:12px;line-height:1.8;margin:0}
.xp-governance-note{margin-top:38px;background:#d3ded8;padding:30px 35px;display:grid;grid-template-columns:.7fr 1fr auto;align-items:center;gap:30px}
.xp-governance-note>div span{color:#5c7a70;font-size:9px}
.xp-governance-note h3{font-size:24px;letter-spacing:-.06em;margin:12px 0 0}
.xp-governance-note p{font-size:12px;line-height:1.85;color:#51605b;margin:0}
.xp-governance-note a{font-size:11px;white-space:nowrap;display:inline-flex;align-items:center;gap:14px;font-weight:700}
.xp-governance-note a svg{width:14px;height:14px}
/* Scenarios */
.xp-scenario-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.xp-scenario-grid article{background:#11191d;border:1px solid rgba(181,224,209,.19);padding:30px 30px 36px;display:flex;flex-direction:column;min-height:475px}
.xp-scenario-grid article>span{color:#a7c6bc;font-size:9px;margin-bottom:65px}
.xp-scenario-grid h3{font-size:clamp(24px,2.3vw,37px);font-weight:600;min-height:78px;margin-bottom:25px}
.xp-scenario-grid p{font-size:12px;line-height:1.8;color:#adbdba;margin:0 0 17px}
.xp-scenario-grid p b{font-weight:700;color:#eef3f0}
.xp-scenario-grid article>a{margin-top:auto;display:inline-flex;align-items:center;gap:18px;border-bottom:1px solid rgba(221,241,229,.33);padding-bottom:10px;align-self:start;font-size:11px;color:#e9eee9;font-weight:700}
.xp-scenario-grid article>a svg{width:14px;height:14px}
/* Integration */
.xp-integration-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(45px,7vw,120px)}
.xp-integration-stack{border-top:1px solid #a7b6af}
.xp-integration-stack>div{display:grid;grid-template-columns:45px 140px 1fr;gap:18px;padding:27px 0;border-bottom:1px solid #a7b6af;align-items:start}
.xp-integration-stack>div>span{font:500 10px 'IBM Plex Mono',monospace;color:#698176}
.xp-integration-stack b{font-size:19px;letter-spacing:-.05em}
.xp-integration-stack p{margin:0;color:#4a5c53;font-size:12px;line-height:1.85}
.xp-integration-aside{background:#111d1f;padding:30px 36px 40px;color:#eef3ef}
.xp-aside-top{display:flex;justify-content:space-between;gap:12px;color:#a7c0b7;font-size:9px}
.xp-integration-terminal{margin:38px 0 35px;display:flex;flex-direction:column;align-items:stretch;gap:9px}
.xp-integration-terminal>span{color:#8caba3;text-align:center;margin-bottom:8px}
.xp-integration-terminal>div{border:1px solid rgba(166,214,198,.3);padding:12px 18px;font:600 11px 'IBM Plex Mono',monospace;letter-spacing:.12em;text-align:center;background:rgba(82,137,118,.11)}
.xp-integration-terminal>i{height:18px;width:1px;background:#8ac8ae;margin:auto;position:relative}
.xp-integration-terminal>i:after{content:'';position:absolute;bottom:0;left:-3px;border:4px solid transparent;border-top-color:#8ac8ae;transform:translateY(6px)}
.xp-integration-aside h3{font-size:clamp(25px,2.6vw,37px);margin:0 0 12px}
.xp-integration-aside p{font-size:12px;line-height:1.8;color:#a9bfb7}
.xp-integration-aside a{color:#e4f7ed;display:inline-flex;gap:12px;align-items:center;font-size:11px;font-weight:700;border-bottom:1px solid rgba(221,239,231,.43);padding-bottom:9px;margin-top:15px}
.xp-integration-aside a svg{width:15px;height:15px}
/* Research */
.xp-research{background:radial-gradient(ellipse at 70% 60%,rgba(41,90,84,.18),transparent 45%),#090e11}
.xp-research-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:9vw;min-height:500px}
.xp-research-grid h2{font-size:clamp(48px,5.8vw,91px);font-weight:600;margin-bottom:32px}
.xp-research-grid h2 em{font-style:normal;color:#9fcac2}
.xp-research-grid p{max-width:660px;font-size:14px;color:#afbeb9;line-height:1.9;margin:0 0 21px}
.xp-research-grid .xp-actions{margin-top:35px}
.xp-research-signal{aspect-ratio:1;max-width:530px;position:relative;display:grid;place-items:center;justify-self:center;width:100%;isolation:isolate}
.xp-research-signal:before{content:'';position:absolute;inset:20%;background:radial-gradient(circle,rgba(124,192,175,.22),transparent 70%)}
.xp-research-ring{position:absolute;border:1px solid rgba(126,192,176,.24);width:76%;aspect-ratio:1;border-radius:50%;animation:xp-orbit-turn 46s linear infinite;transform:rotateX(55deg)}
.xp-research-ring.r2{width:65%;transform:rotateY(55deg);animation-direction:reverse}.xp-research-ring.r3{width:88%;border-style:dashed;animation-duration:64s}
.xp-research-signal img{width:44%;position:relative;z-index:2;filter:drop-shadow(0 0 40px rgba(101,168,146,.16))}
.xp-research-signal span{position:absolute;bottom:0;font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.1em;color:#84a69c}
/* End */
.xp-final{background:#e7eae5;color:#111b1d;padding:clamp(85px,9vw,155px) 0 clamp(80px,8vw,140px)}
.xp-final .xp-section-label{margin-bottom:100px}
.xp-final-grid{display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:6vw}
.xp-final h2{font-size:clamp(57px,6.8vw,105px);font-weight:600;letter-spacing:-.077em;margin:0 0 26px}
.xp-final h2 em{font-style:normal;color:#678982}
.xp-final p{font-size:15px;line-height:1.9;max-width:620px;color:#41524e;margin-bottom:35px}
.xp-final .xp-btn-primary{color:#f2f5f1;background:#111e20;border-color:#111e20}
.xp-final .xp-btn-primary:hover{background:#234a4d}
.xp-final .xp-btn-outline{color:#17211e;background:transparent;border-color:#7c948c}
.xp-final .xp-btn-outline:hover{background:#d2dcd5}
.xp-final-side{border-left:1px solid #9eb2a9;padding:40px;display:flex;flex-direction:column;align-items:center;text-align:center}
.xp-final-side img{width:min(205px,65%);height:auto;object-fit:contain;margin-bottom:40px}
.xp-final-side>span{font-size:10px;color:#415b52}
.xp-final-side>small{margin-top:12px;font-size:9px;color:#6b8379}
/* Motion + accessibility */
@media (prefers-reduced-motion:reduce){.xp-page *, .xp-page *::before,.xp-page *::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
@media(max-width:1150px){
 .xp-hero h1{font-size:clamp(54px,6.3vw,80px)}.xp-hero-schematic{min-height:350px}
 .xp-outcome-grid{grid-template-columns:repeat(2,1fr)}.xp-outcome-grid article:nth-child(3){border-left:0;border-top:1px solid #a8b3ae;padding-left:0}.xp-outcome-grid article:nth-child(4){border-top:1px solid #a8b3ae}
 .xp-arch-grid{grid-template-columns:.95fr 1.05fr}.xp-arch-visual{min-height:550px}.xp-arch-net{height:395px}.xp-core{width:100px;height:100px}.xp-core img{width:55px;height:55px}.xp-node{font-size:8px;padding:8px}
 .xp-governance-note{grid-template-columns:1fr 1.5fr}.xp-governance-note a{grid-column:2}
 .xp-integration-stack>div{grid-template-columns:28px 95px 1fr;gap:11px}
}
@media(max-width:800px){
 .xp-page .shell{width:calc(100% - 44px)}.xp-hero{min-height:auto}.xp-hero-wrap{min-height:0}
 .xp-hero-layout{grid-template-columns:1fr;gap:0;min-height:0}.xp-hero-copy{padding:90px 0 10px}.xp-hero h1{font-size:clamp(56px,9vw,88px)}.xp-hero-schematic{min-height:0;height:460px;max-width:560px;width:100%;margin:auto}
 .xp-section-label{margin-bottom:65px}.xp-heading-split,.xp-intro-grid{grid-template-columns:1fr;gap:26px}.xp-section-heading h2,.xp-intro-grid h2{font-size:clamp(48px,7vw,77px)}
 .xp-heading-split>p{max-width:650px}.xp-intro-grid{margin-bottom:60px}
 .xp-arch-grid{grid-template-columns:1fr}.xp-arch-visual{border-right:0;border-bottom:1px solid rgba(198,230,226,.15);min-height:540px}.xp-arch-net{height:390px}.xp-core{width:120px;height:120px}.xp-core img{width:65px;height:65px}
 .xp-modality-layout{grid-template-columns:1fr;gap:25px}.xp-modality-list{display:grid;grid-template-columns:1fr 1fr}.xp-modality-list button{border-right:1px solid #abb8b3;min-height:68px}.xp-modality-stage{min-height:470px}
 .xp-model-grid{grid-template-columns:repeat(2,1fr)}.xp-governance-grid{grid-template-columns:repeat(2,1fr)}.xp-scenario-grid{grid-template-columns:1fr}.xp-scenario-grid article{min-height:0}.xp-scenario-grid article>span{margin-bottom:28px}.xp-scenario-grid h3{min-height:0}.xp-scenario-grid article>a{margin-top:20px}
 .xp-integration-layout{grid-template-columns:1fr;gap:35px}.xp-integration-aside{max-width:none}
 .xp-research-grid{grid-template-columns:1fr;gap:25px}.xp-research-signal{max-width:410px}.xp-final-grid{grid-template-columns:1fr;gap:35px}.xp-final-side{display:none}
 .xp-technical-strip{flex-wrap:wrap;justify-content:flex-start}.xp-technical-strip a{margin-left:auto}
}
@media(max-width:520px){
 .xp-page .shell{width:calc(100% - 36px)}.xp-hero-meta{font-size:8px}.xp-hero-copy{padding-top:76px}.xp-hero h1{font-size:clamp(46px,11.1vw,65px);white-space:normal}.xp-hero-lede{font-size:16px}.xp-hero-schematic{height:330px}.xp-orbit-chip{font-size:7px;padding:7px}.chip-a{left:0;top:12%}.chip-b{right:0;top:36%}.chip-c{bottom:17%;left:0}.xp-orbit-base{font-size:7px}
 .xp-hero-bottom{font-size:8px}.xp-hero-bottom>span:last-child{display:none}.xp-hero-bottom a{gap:6px}
 .xp-section{padding:78px 0 92px!important}.xp-section-label{margin-bottom:52px;gap:10px;font-size:8px}.xp-section-label span:last-child{font-size:8px;text-align:right}.xp-heading-split h2,.xp-intro-grid h2{font-size:clamp(40px,10vw,54px)}.xp-heading-split>p,.xp-intro-body p{font-size:13px;line-height:1.8}
 .xp-btn{width:100%;gap:12px;min-height:50px}.xp-actions{gap:8px}.xp-chapter-nav{top:70px}.xp-chapter-row{gap:25px;min-height:49px}.xp-chapter-row a{min-height:48px}
 .xp-outcome-grid{grid-template-columns:1fr}.xp-outcome-grid article{min-height:230px!important;padding:25px 4px 27px!important;border-left:0!important;border-top:1px solid #a8b3ae}.xp-outcome-grid article:first-child{border-top:0}.xp-num{margin-bottom:24px}
 .xp-arch-visual{min-height:400px}.xp-arch-top,.xp-arch-foot{padding:16px;font-size:7px}.xp-arch-net{height:305px}.xp-node{font-size:7px;gap:5px;padding:6px}.xp-core{width:80px;height:80px}.xp-core img{width:42px;height:42px}.xp-core span{font-size:8px}.xp-node.n1{left:10%;top:10%}.xp-node.n2{right:5%;top:10%}.xp-node.n3{left:0;top:47%}.xp-node.n4{right:0;top:47%}.xp-node.n5{left:7%;bottom:7%}.xp-node.n6{right:4%;bottom:7%}
 .xp-arch-list button{min-height:85px;grid-template-columns:20px 1fr;gap:8px;padding:12px}.xp-arch-list button svg{display:none}.xp-arch-list button strong{font-size:11px}.xp-arch-detail{padding:27px 22px 32px}.xp-arch-detail h3{font-size:28px}
 .xp-modality-list{grid-template-columns:1fr}.xp-modality-list button{min-height:58px;padding:13px 15px}.xp-modality-list button span{font-size:10px}.xp-modality-stage{min-height:420px;padding:22px}.xp-stage-viz{height:167px;gap:8px}.xp-stage-center{width:86px;height:86px}.xp-databars,.xp-stage-trace{width:29%;height:75px}.xp-stage-mini{gap:12px}.xp-stage-mini strong{font-size:10px}
 .xp-model-grid{grid-template-columns:1fr}.xp-model-grid a{min-height:245px;padding:24px}.xp-model-grid a>span{margin-bottom:32px}
 .xp-lifecycle{grid-template-columns:1fr}.xp-lifecycle-rail{border-right:0;border-bottom:1px solid #a8b5ae;display:grid;grid-template-columns:repeat(3,1fr)}.xp-lifecycle-rail button{min-height:65px;font-size:12px;gap:7px;padding:11px 9px}.xp-lifecycle-rail button:hover,.xp-lifecycle-rail button.selected{padding-left:12px}.xp-phase-content{padding:32px 19px;min-height:360px}.xp-phase-content h3{font-size:32px;margin:44px 0 16px}.xp-phase-content>p{font-size:13px}.xp-phase-deliverable{flex-direction:column;gap:10px}.xp-phase-deliverable strong{text-align:left}.xp-principle-grid{grid-template-columns:1fr;gap:22px}
 .xp-deploy-layout{grid-template-columns:1fr}.xp-deploy-menu{border-right:0;border-bottom:1px solid rgba(213,239,231,.2);display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.xp-deploy-menu button{min-height:85px;display:flex;flex-direction:column;justify-content:center;gap:8px;text-align:center;padding:12px 6px;border-right:1px solid rgba(213,239,231,.2);border-bottom:0}.xp-deploy-menu button strong{font-size:13px}.xp-deploy-menu button svg{display:none}.xp-deploy-stage{padding:26px 20px 30px;min-height:475px}.xp-deploy-status{font-size:8px}.xp-deploy-diagram{height:200px;gap:4px}.xp-deploy-end{padding:10px 4px;min-height:77px}.xp-deploy-end span{font-size:7px}.xp-deploy-end strong{font-size:9px}.xp-deploy-middle{min-height:108px;padding:9px 3px}.xp-deploy-middle img{width:47px;height:47px}.xp-deploy-middle b{font-size:7px}.xp-deploy-stage h3{font-size:27px}
 .xp-governance-grid{grid-template-columns:1fr}.xp-governance-grid article{min-height:190px;padding:23px}.xp-governance-grid h3{margin:26px 0 10px}.xp-governance-note{grid-template-columns:1fr;padding:25px;gap:15px}.xp-governance-note a{grid-column:1}
 .xp-scenario-grid article{padding:25px}.xp-scenario-grid h3{font-size:28px}.xp-integration-stack>div{grid-template-columns:27px 1fr;gap:12px}.xp-integration-stack>div p{grid-column:2}.xp-integration-aside{padding:24px}.xp-research-signal{width:100%;max-width:300px}.xp-final{padding:80px 0}.xp-final h2{font-size:clamp(48px,11vw,61px)}.xp-final .xp-section-label{margin-bottom:65px}
}


/* PLATFORM ONLY — final invitation, contrast and visual alignment */
body.ex-platform-v8 .closing-cta {
  background: linear-gradient(118deg, #f2f4f0 0%, #e5ede9 100%);
  color: #162527;
  border-top: 1px solid rgba(28, 58, 56, .12);
  padding: clamp(78px, 8vw, 116px) 0;
}
body.ex-platform-v8 .closing-cta::before {
  border-color: rgba(29, 77, 70, .12);
  box-shadow: 0 0 0 100px rgba(40, 96, 85, .025), 0 0 0 200px rgba(40, 96, 85, .015);
}
body.ex-platform-v8 .closing-cta::after {
  opacity: .045;
}
body.ex-platform-v8 .closing-cta .section-kicker {
  color: #365e58;
}
body.ex-platform-v8 .closing-cta .section-kicker::before {
  background: #365e58;
}
body.ex-platform-v8 .closing-cta h2 {
  color: #142628;
  font-size: clamp(44px, 5.2vw, 78px);
  line-height: 1.06;
  letter-spacing: -.068em;
}
body.ex-platform-v8 .closing-cta h2 em {
  background: none;
  color: #386e63;
  -webkit-text-fill-color: #386e63;
}
body.ex-platform-v8 .closing-cta p {
  color: #3c514f;
  font-size: clamp(15px, 1.2vw, 17px);
  line-height: 1.8;
  max-width: 580px;
}
body.ex-platform-v8 .closing-cta .round-cta {
  background: #173638;
  color: #fff;
  box-shadow: 0 14px 42px rgba(20, 52, 52, .13);
}
body.ex-platform-v8 .closing-cta .round-cta:hover {
  background: #2b615d;
  transform: translateY(-4px);
}
body.ex-platform-v8 .closing-cta .round-cta:focus-visible {
  outline: 3px solid #386e63;
  outline-offset: 5px;
}
@media (max-width: 700px) {
  body.ex-platform-v8 .closing-cta { padding: 72px 0 76px; }
  body.ex-platform-v8 .closing-cta h2 { font-size: clamp(43px, 10.5vw, 58px); }
  body.ex-platform-v8 .closing-cta .round-cta { width: 72px; height: 72px; min-width: 72px; }
}
@media (prefers-reduced-motion: reduce) {
  body.ex-platform-v8 .closing-cta .round-cta { transition: none; }
}
