/* Neoo MSP, Le réseau vivant. Business-style light world: full-frame hero, opt-in scroll film,
   incident cockpit. Source of truth: lib/neoo-msp-10k.mjs + docs/design-neoo-msp-10k.md. */
.msp-10k {
  --mx-canvas:#f8f9ff; --mx-paper:#eef1fa; --mx-ink:#0c1643;
  --mx-muted:#475674; --mx-night:#101b42; --mx-line:#cbd2e4;
  --mx-control:#71809e; --mx-accent:#2b53e8; --mx-accent-deep:#1d3db8; --mx-accent-soft:#4d7dff;
  --mx-mono:ui-monospace,SFMono-Regular,Consolas,monospace;
  --mx-display:"Cerebri Sans","Segoe UI",system-ui,sans-serif;
  --mx-ease:cubic-bezier(.22,.61,.36,1);
  --mx-subnav-h:60px;
  --mx-stage-top:calc(var(--partner-overview-header-h,64px) + var(--mx-subnav-h));
  --mx-film-height:700svh;
  --mx-tshadow:0 1px 0 rgba(248,249,255,.92),0 2px 10px rgba(248,249,255,.78),0 10px 40px rgba(248,249,255,.85);
  --mx-ending-image:url("/assets/neoo-native/assets/neoo-msp/msp-10k-ending-20260910.jpg");
  background:var(--mx-canvas); color:var(--mx-ink);
}
html:has(.msp-10k), body.msp-10k { overflow-x:hidden; overflow-x:clip; }
.msp-10k #main { position:relative; isolation:isolate; background:var(--mx-canvas); }
.msp-10k #main :is(.mx-shell,.nc-shell) { width:min(1280px,calc(100% - 80px)); margin-inline:auto; }
.msp-10k #main :is(.mx-section,.nc-section) { position:relative; padding:88px 0; }
.msp-10k #main :is(h1,h2) { font-family:var(--cb-display-font); font-weight:var(--cb-display-weight); letter-spacing:var(--cb-display-tracking); line-height:var(--cb-display-leading); text-wrap:balance; }
.msp-10k #main h2 { font-size:clamp(34px,3.5vw,52px); color:inherit; }
.msp-10k #main :is(.mx-head,.nc-section-head) { margin:0 0 36px; }
.msp-10k #main :is(.mx-head,.nc-section-head) h2 { max-width:23ch; margin:0; }
.msp-10k #main :is(.mx-head,.nc-section-head) > p:last-child:not(.mx-eyebrow,.nc-eyebrow) { font-size:18px; line-height:1.65; color:var(--mx-muted); max-width:64ch; margin:24px 0 0; }
.msp-10k #main :is(.mx-eyebrow,.nc-eyebrow) { color:var(--mx-accent); font-size:11px; line-height:1.6; letter-spacing:.14em; text-transform:uppercase; margin:0 0 22px; }
.msp-10k #main .nc-eyebrow::after { display:none; }
.msp-10k #main .nc-button { border-radius:7px; min-height:48px; font-size:15px; padding:13px 18px; gap:10px; }
.msp-10k #main .nc-button--primary { background:var(--mx-accent); border:1px solid var(--mx-accent); color:#f8f9ff; }
.msp-10k #main .nc-button--secondary { background:transparent; border:1px solid var(--mx-control); color:var(--mx-ink); }
.msp-10k #main :is(button,a,input,select,summary):focus-visible { outline:3px solid #5376ff; outline-offset:4px; }
.msp-10k #main [hidden] { display:none!important; }

/* One fixed environment layer behind the whole page: soft glow and three drifting motes. */
.mx-env { position:fixed; inset:0; z-index:-1; pointer-events:none; background:radial-gradient(46% 34% at 12% 18%,#2b53e80d,transparent 70%),radial-gradient(40% 30% at 88% 76%,#4d7dff0b,transparent 70%); }
.mx-env i { position:absolute; width:5px; height:5px; border-radius:50%; background:var(--mx-accent-soft); opacity:.3; }
.mx-env i:nth-child(1) { top:22%; left:8%; }
.mx-env i:nth-child(2) { top:58%; left:92%; width:4px; height:4px; }
.mx-env i:nth-child(3) { top:84%; left:16%; width:3px; height:3px; }
@media (prefers-reduced-motion:no-preference) {
  .mx-env i { animation:mx-drift 72s var(--mx-ease) infinite alternate; }
  .mx-env i:nth-child(2) { animation-duration:88s; animation-delay:-31s; }
  .mx-env i:nth-child(3) { animation-duration:64s; animation-delay:-50s; }
  @keyframes mx-drift { from { transform:translate3d(0,0,0); } to { transform:translate3d(26px,-60px,0); } }
}

/* Buttons of the light world (hero and film CTA row). */
.mx-btn { display:inline-flex; min-height:50px; align-items:center; justify-content:center; gap:10px; padding:13px 24px; border:1px solid transparent; border-radius:12px; text-decoration:none; font-family:var(--mx-display); font-size:15px; font-weight:600; line-height:1.2; text-shadow:none; cursor:pointer; transition:transform .16s var(--mx-ease),box-shadow .18s var(--mx-ease),border-color .18s var(--mx-ease),background-color .18s var(--mx-ease); }
.mx-btn svg { flex:none; width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; transition:transform .18s var(--mx-ease); }
.mx-btn--primary { color:#fff; background:var(--mx-accent); box-shadow:0 14px 32px #2b53e842; }
.mx-btn--ghost { color:var(--mx-ink); border-color:var(--mx-control); background:#ffffffd9; }
@media (hover:hover) and (pointer:fine) {
  .mx-btn:hover { transform:translateY(-2px); }
  .mx-btn:hover svg { transform:translateX(3px); }
  .mx-btn--primary:hover { box-shadow:0 18px 38px #2b53e85c; }
  .mx-btn--ghost:hover { border-color:var(--mx-accent); }
}
@media (pointer:coarse) { .mx-btn { min-height:44px; } }

/* Full-frame hero: the film's resting frame behind the commercial promise. */
.msp-10k #main .mx-hero { position:relative; isolation:isolate; display:block; min-height:790px; box-sizing:border-box; padding:100px 0 28px; overflow:hidden; background:#e8edf5; }
.mx-hero-art { position:absolute; inset:0; margin:0; z-index:-2; }
.mx-hero-art img { display:block; width:100%; height:100%; object-fit:cover; object-position:62% center; }
.mx-hero-veil { position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(90deg,#f8f9ff 0%,rgba(248,249,255,.98) 23%,rgba(248,249,255,.93) 39%,rgba(248,249,255,.14) 70%,rgba(248,249,255,0) 100%); }
.msp-10k #main .mx-hero-copy { max-width:610px; }
.msp-10k #main .mx-hero h1 { font-size:clamp(46px,4.4vw,65px)!important; max-width:19ch; margin:20px 0 26px; color:var(--mx-ink); text-shadow:none; }
.mx-hero h1 span { display:block; color:var(--mx-accent); }
.mx-hero .mx-lead { max-width:52ch; font-size:18px; line-height:1.65; color:var(--mx-muted); margin:0 0 18px; }
.mx-difference { max-width:46ch; font-size:18px; line-height:1.6; margin:0 0 28px; }
.mx-actions { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.mx-hero-price { margin:24px 0 0; font-size:14px; color:var(--mx-muted); }
.mx-hero-price strong { font-size:20px; color:var(--mx-ink); font-weight:600; }
.mx-hero-terms { margin:8px 0 0; font-size:13px; line-height:1.6; color:var(--mx-muted); max-width:60ch; }
.mx-price-link { display:inline-flex; align-items:center; min-height:44px; font-size:14px; color:var(--mx-muted); margin-top:4px; text-underline-offset:4px; }
.mx-assurances { list-style:none; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 28px; padding:18px 24px; margin:44px 0 0; background:rgba(248,249,255,.94); border-radius:6px; color:var(--mx-muted); font-size:13px; line-height:1.5; }
.mx-assurances li { display:flex; align-items:baseline; gap:10px; }
.mx-assurances li::before { content:""; width:4px; height:4px; flex:none; background:var(--mx-accent); border-radius:50%; transform:translateY(-3px); }

/* Signature rail: the client thread that runs beside each authored section. */
.mx-rail { position:absolute; top:0; bottom:0; left:max(18px,calc((100% - 1280px) / 2 - 52px)); width:22px; pointer-events:none; }
.mx-rail svg { width:100%; height:100%; overflow:visible; }
.mx-rail path { fill:none; stroke:#2b53e857; stroke-width:1.6; stroke-dasharray:1; }
.mx-rail circle { fill:var(--mx-accent-soft); }
.mx-js .mx-rail path { stroke-dashoffset:1; }
.mx-js .mx-rail circle { opacity:0; transition:opacity .6s var(--mx-ease) .9s; }
.mx-js .mx-section.mx-entered .mx-rail path { transition:stroke-dashoffset 1.4s var(--mx-ease); stroke-dashoffset:0; }
.mx-js .mx-section.mx-entered .mx-rail circle { opacity:.9; }
@media (max-width:1400px) { .mx-rail { display:none; } }

/* Choreographed entrances, hidden only when JavaScript runs; stagger retired after the entrance. */
.msp-10k.mx-js #main :is(.mx-section,.nc-section):not(.mx-entered) :is(.mx-reveal,.nc-section-head,.nc-benefit-grid > article,.nc-pillar-grid > article,.nc-flow > li,.nc-two-column > *,.nc-integration-levels > article,.nc-integrations__cta,.nc-msp-plan,.nc-msp-matrix,.nc-msp-calculator,.nc-faq__items,.nc-modules) { opacity:0; transform:translateY(24px); }
.msp-10k.mx-js #main :is(.mx-section,.nc-section).mx-entered :is(.mx-reveal,.nc-section-head,.nc-benefit-grid > article,.nc-pillar-grid > article,.nc-flow > li,.nc-two-column > *,.nc-integration-levels > article,.nc-integrations__cta,.nc-msp-plan,.nc-msp-matrix,.nc-msp-calculator,.nc-faq__items,.nc-modules) { opacity:1; transform:none; transition:opacity .7s var(--mx-ease),transform .7s var(--mx-ease); }
.msp-10k.mx-js #main :is(.mx-section,.nc-section).mx-entered :is(.nc-benefit-grid > article,.nc-pillar-grid > article,.nc-flow > li,.nc-msp-plan):nth-child(2) { transition-delay:.09s; }
.msp-10k.mx-js #main :is(.mx-section,.nc-section).mx-entered :is(.nc-benefit-grid > article,.nc-pillar-grid > article,.nc-flow > li,.nc-msp-plan):nth-child(3) { transition-delay:.18s; }
.msp-10k.mx-js #main :is(.mx-section,.nc-section).mx-entered :is(.nc-benefit-grid > article,.nc-pillar-grid > article,.nc-flow > li,.nc-msp-plan):nth-child(4) { transition-delay:.27s; }
.msp-10k.mx-js #main :is(.mx-section,.nc-section).mx-entered :is(.nc-flow > li):nth-child(n+5) { transition-delay:.36s; }
.msp-10k.mx-js #main :is(.mx-section,.nc-section).mx-entered.mx-settled :is(.nc-benefit-grid > article,.nc-pillar-grid > article,.nc-flow > li,.nc-msp-plan):nth-child(n) { transition-delay:0s; }
.msp-10k.mx-reduced #main :is(.mx-section,.nc-section) :is(.mx-reveal,.nc-section-head,.nc-benefit-grid > article,.nc-pillar-grid > article,.nc-flow > li,.nc-two-column > *,.nc-integration-levels > article,.nc-integrations__cta,.nc-msp-plan,.nc-msp-matrix,.nc-msp-calculator,.nc-faq__items,.nc-modules) { opacity:1; transform:none; }

/* Signature: an incident's context persists while the visitor advances it. */
.mx-proof-layout { display:grid; grid-template-columns:1fr; gap:32px; }
.msp-10k #main .mx-proof { padding-top:80px; background:var(--mx-paper); }
.msp-10k #main .mx-proof-layout .mx-head { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.8fr); gap:0 72px; margin:0; align-items:end; }
.mx-proof-layout .mx-head .mx-eyebrow { grid-column:1/-1; }
.msp-10k #main .mx-proof-layout .mx-head > p:last-child { margin:0; }
.mx-cockpit { display:grid; grid-template-columns:280px minmax(0,1fr); background:var(--mx-night); border:1px solid #394666; color:#f7f8ff; border-radius:16px; margin:0; box-shadow:0 24px 55px #14213f1c; overflow:hidden; }
.mx-chrome,.mx-cockpit-bottom,.mx-cockpit figcaption { grid-column:1/-1; }
.mx-cockpit > .mx-client { grid-column:1; grid-row:2; align-self:start; flex-wrap:wrap; padding-bottom:0; }
.mx-cockpit > .mx-client .mx-client-id { margin:0; }
.mx-cockpit > .mx-record { grid-column:1; grid-row:3; grid-template-columns:1fr; gap:16px; border:0; margin:0 24px 24px; padding:20px 0 0; }
.mx-workspace { grid-column:2; grid-row:2 / span 2; min-width:0; padding-top:24px; border-left:1px solid #34415f; }
.mx-workspace:has(.mx-tabs[hidden]) { grid-column:1/-1; grid-row:auto; border:0; }
.mx-cockpit:has(.mx-tabs[hidden]) > .mx-record { grid-column:2; grid-row:2; }
.mx-chrome { display:flex; align-items:center; justify-content:space-between; padding:18px 24px; border-bottom:1px solid #34415f; font:11px/1.5 var(--mx-mono); letter-spacing:.07em; color:#d5def2; }
.mx-status-dot { width:7px; height:7px; background:#adc2ff; border-radius:50%; }
.mx-client { display:flex; align-items:center; gap:16px; padding:26px 24px 22px; }
.mx-monogram { width:46px; height:46px; border:1px solid #65779d; border-radius:9px; display:grid; place-items:center; font-size:23px; flex-shrink:0; }
.mx-label { display:block; font:11px/1.5 var(--mx-mono); letter-spacing:.08em; text-transform:uppercase; color:#b9caff; margin:0 0 6px; }
.mx-client strong { display:block; font-size:22px; font-weight:400; }
.mx-client-scope { display:block; font-size:12px; color:#b9c6e6; margin-top:3px; }
.mx-client-id { font:10px/1.5 var(--mx-mono); color:#b9caff; margin-left:auto; }
.mx-record { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:0 24px 24px; padding:18px 0; gap:16px; border-block:1px solid #34415f; }
.mx-record dt { font-size:11px; color:#b9c6e6; margin-bottom:5px; }
.mx-record dd { margin:0; font-size:13px; line-height:1.5; }
.mx-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; padding:0 24px 20px; }
.mx-tabs button { display:flex; align-items:center; gap:8px; text-align:left; min-height:44px; padding:10px; font:13px/1.35 inherit; color:#e2e9fa; background:transparent; border:1px solid #7382a3; border-radius:5px; cursor:pointer; transition:background .2s var(--mx-ease),color .2s var(--mx-ease); }
.mx-tabs button > span { font:10px/1 var(--mx-mono); opacity:.8; }
.mx-tabs button:hover { background:#29385c; }
.mx-tabs button[aria-selected="true"] { background:#dfe7ff; color:#0c1643; border-color:#a4bbff; }
.mx-panels { padding:0 24px; }
.mx-panels article { background:#19274f; border-left:2px solid #93b0ff; border-radius:0 8px 8px 0; padding:26px; min-height:246px; margin-bottom:24px; }
.mx-panel-meta { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; margin-bottom:20px; }
.mx-panel-meta .mx-label { margin:0; }
.mx-badge { color:#e2e9fa; border:1px solid #7c8dae; padding:5px 8px; border-radius:5px; font-size:12px; }
.msp-10k #main .mx-panels h3 { color:#f8f9ff; font-size:25px; font-weight:400; line-height:1.2; letter-spacing:-.025em; margin:0 0 12px; }
.mx-panels article > p { color:#d2dcf5; font-size:16px; line-height:1.65; margin:0; max-width:62ch; }
.mx-trace { display:flex; align-items:center; gap:9px; font:10px/1.4 var(--mx-mono); color:#b9caff; margin-top:24px; }
.mx-trace i { height:1px; background:#6c82ac; flex:1; position:relative; }
.mx-trace i::after { content:""; position:absolute; right:0; top:-2px; width:5px; height:5px; border-radius:50%; background:#b9caff; }
.mx-cockpit-bottom { padding:0 24px 22px; }
.mx-next { width:100%; background:transparent; border:1px solid #8196bd; color:#e2eaff; border-radius:5px; display:flex; align-items:center; justify-content:space-between; padding:12px 14px; min-height:46px; font:inherit; font-size:13px; cursor:pointer; }
.mx-next:hover { background:#29385c; }
.mx-next svg { width:18px; height:18px; stroke:currentColor; stroke-width:1.7; fill:none; }
.mx-cockpit-bottom > p:not(.visually-hidden) { font-size:11px; line-height:1.5; color:#b9c6e6; margin:12px 0 0; }
.mx-cockpit figcaption { padding:14px 24px; border-top:1px solid #34415f; font-size:11px; line-height:1.5; color:#b9c6e6; }

/* The portfolio and the selected customer's related records. */
.msp-10k #main .mx-context { background:var(--mx-paper); }
.mx-context-layout { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.mx-quote { font-size:21px; line-height:1.45; letter-spacing:-.02em; max-width:35ch; margin:30px 0 0; }
.mx-network { margin:0; border:1px solid #b9c6de; border-radius:12px; background:#f8f9ff; padding:22px; }
.mx-network-top { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; }
.mx-network-top .mx-label { color:var(--mx-muted); }
.mx-network-top > span:last-child { font:9px/1.5 var(--mx-mono); color:var(--mx-muted); }
.mx-network svg { width:100%; height:auto; overflow:visible; }
.mx-links { stroke:#728bb8; stroke-width:1.5; }
.mx-context-map { position:relative; min-height:300px; display:grid; align-items:center; margin:20px 0; }
.mx-context-map > svg { position:absolute; inset:0; width:100%; height:100%; }
.mx-context-map ul { position:relative; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); grid-template-rows:60px 180px 60px; gap:0 16px; list-style:none; padding:0; margin:0; }
.mx-context-map li { display:grid; place-items:center; padding:10px 6px; background:var(--mx-paper); border:1px solid #a9b8d4; border-radius:8px; font-size:15px; line-height:1.4; color:var(--mx-ink); text-align:center; overflow-wrap:anywhere; }
.mx-context-map li:nth-child(n+4) { grid-row:3; }
.mx-context-core { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); background:var(--mx-night); border:1px solid #536689; color:#f8f9ff; padding:20px 26px; border-radius:12px; text-align:center; z-index:1; width:max-content; max-width:90%; }
.mx-context-core span,.mx-context-core small { display:block; font-size:12px; line-height:1.5; color:#c1cde7; }
.mx-context-core strong { display:block; font-size:23px; line-height:1.4; font-weight:400; margin:5px 0; }
.mx-network figcaption { color:var(--mx-muted); font-size:11px; line-height:1.5; }

/* Lower page: quieter surfaces, alternating layouts and explicit service flow. */
.msp-10k #main .nc-msp-problem { padding-block:72px; background:var(--mx-canvas); }
.msp-10k #main .nc-section-head--center { max-width:none; margin-inline:0; text-align:left; }
.msp-10k #main .nc-section-head--center h2 { margin-inline:0; }
.msp-10k #main .nc-section-head--center .nc-lead { margin-left:0; }
.msp-10k #main .nc-benefit-grid { gap:32px; border:0; }
.msp-10k #main .nc-benefit-grid article { background:none; border:0; box-shadow:none; border-radius:0; border-top:1px solid var(--mx-line); padding:24px 0 0; min-height:0; }
.msp-10k #main .nc-benefit-grid article > span { color:var(--mx-accent); font:12px var(--mx-mono); }
.msp-10k #main .nc-benefit-grid h3 { font-size:23px; font-weight:400; margin:14px 0 12px; }
.msp-10k #main .nc-benefit-grid p { font-size:16px; line-height:1.65; }
.msp-10k #main :is(.nc-lifecycle,.nc-migration) { background:var(--mx-night)!important; color:#f8f9ff; --mx-muted:#c1cde7; --mx-accent:#adc2ff; --nc-ink:#f8f9ff; --nc-copy:#c1cde7; --nc-blue:#adc2ff; --nc-line:#536689; }
.msp-10k #main :is(.nc-lifecycle,.nc-migration) .nc-section-head { display:block; max-width:850px; }
.msp-10k #main :is(.nc-lifecycle,.nc-migration) :is(h2,.nc-section-head p) { color:inherit; }
.msp-10k #main :is(.nc-lifecycle,.nc-migration) .nc-flow { background:transparent; border:0; border-radius:0; gap:0; padding:0; }
.msp-10k #main .nc-lifecycle .nc-flow { grid-template-columns:repeat(4,minmax(0,1fr)); }
.msp-10k #main .nc-msp-onboarding .nc-flow { grid-template-columns:repeat(3,minmax(0,1fr)); }
.msp-10k #main .nc-msp-onboarding .nc-flow li { grid-template-columns:1fr; align-content:start; justify-items:start; text-align:left; gap:14px; min-height:0; padding:28px; }
.msp-10k #main .nc-msp-onboarding .nc-flow strong { font-size:18px; }
.msp-10k #main .nc-msp-onboarding .nc-flow p { margin:0; font-size:16px; font-weight:400; line-height:1.6; }
.msp-10k #main :is(.nc-lifecycle,.nc-migration) .nc-flow li { min-height:110px; padding:22px 20px; background:transparent; border:0; border-top:1px solid #536689; box-shadow:none; border-radius:0; color:#f8f9ff; text-align:left; justify-items:start; grid-template-columns:1fr; gap:10px; }
.msp-10k #main :is(.nc-lifecycle,.nc-migration) .nc-flow li span { color:#b9caff; font:12px/1.4 var(--mx-mono); }
.msp-10k #main :is(.nc-lifecycle,.nc-migration) .nc-flow li strong { color:#f8f9ff; font-size:18px; font-weight:400; }
.msp-10k #main :is(.nc-lifecycle,.nc-migration) .nc-flow li::after { content:none; }
.msp-10k #main .nc-pillars > .nc-shell { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:0 64px; align-items:start; }
.msp-10k #main .nc-pillars .nc-section-head { grid-column:1; grid-row:1 / span 2; }
.msp-10k #main .nc-pillars .nc-pillar-grid { grid-column:2; gap:0 28px; border:0; }
.msp-10k #main .nc-pillar-grid article { background:none; border:0; border-top:1px solid var(--mx-line); box-shadow:none; padding:24px 0; border-radius:0; min-height:220px; }
.msp-10k #main .nc-pillar-grid h3 { font-size:24px; font-weight:400; line-height:1.2; margin:16px 0 12px; }
.msp-10k #main .nc-pillar-grid p { font-size:16px; line-height:1.65; }
.msp-10k #main .nc-pillar-grid article > span { color:var(--mx-accent); font:12px/1.4 var(--mx-mono); }
.msp-10k #main .nc-pillar-grid article > a { margin-top:auto; }
.msp-10k #main :is(.nc-lifecycle,.nc-migration) .nc-flow li p { margin:0; font-size:14px; line-height:1.55; color:#c1cde7; }
/* Verified feature matrix: inline check + label (styles.css sets svg to block), sticky feature column, scroll shadow on narrow screens. */
.msp-10k #main .nc-msp-matrix td { white-space:nowrap; }
.msp-10k #main .nc-msp-matrix td svg { display:inline-block; width:17px; height:17px; vertical-align:-4px; }
.msp-10k #main .nc-msp-matrix th:first-child, .msp-10k #main .nc-msp-matrix tbody th { position:sticky; left:0; z-index:1; background:#fff; }
.msp-10k #main .nc-msp-matrix__scroll { background:linear-gradient(270deg,#fff 30%,rgba(255,255,255,0)) right/48px 100% no-repeat local,radial-gradient(farthest-side at 100% 50%,rgba(12,22,67,.16),transparent) right/28px 100% no-repeat scroll; background-color:#fff; }
.msp-10k #main .nc-msp-matrix__hint { display:none; margin:12px 0 0; font-size:13px; line-height:1.5; color:var(--mx-muted); }
.msp-10k #main .nc-modules { grid-column:2; width:100%; margin:10px 0 0; border-radius:8px; }
.msp-10k #main .nc-modules ul { grid-template-columns:repeat(3,minmax(0,1fr)); }
.msp-10k #main .nc-two-column { grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:64px; }
.msp-10k #main .nc-automation-example { background:var(--mx-paper)!important; }
.msp-10k #main .nc-automation-example ol { background:var(--mx-night); border:1px solid #394666; border-radius:14px; padding:12px 26px; color:#f8f9ff; }
.msp-10k #main .nc-automation-example ol li { background:none; border:0; border-radius:0; border-bottom:1px solid #536689; box-shadow:none; padding:22px 0; gap:16px; }
.msp-10k #main .nc-automation-example ol li:last-child { border:0; }
.msp-10k #main .nc-automation-example ol :is(strong,small,span) { color:inherit; }
.msp-10k #main .nc-automation-example ol strong { font-size:17px; line-height:1.4; font-weight:400; }
.msp-10k #main .nc-portal { background:var(--mx-canvas)!important; }
.msp-10k #main .nc-portal-preview { border-radius:14px; box-shadow:0 24px 55px #14213f1c; }
.msp-10k #main .nc-integrations { background:var(--mx-paper)!important; }
.msp-10k #main .nc-integration-levels article { border-radius:12px; box-shadow:none; }
.msp-10k #main .nc-pricing-calculator { background:var(--mx-canvas)!important; }
.msp-10k #main .nc-msp-plan { padding:46px 22px 24px; border-radius:12px; box-shadow:none; background:#fff; border-color:var(--mx-line); }
.msp-10k #main .nc-msp-plan--recommended { border-color:var(--mx-accent); background:#eef2ff; }
.msp-10k #main .nc-msp-plan__badge { position:absolute; top:12px; left:22px; margin:0; padding:4px 0; background:none; color:var(--mx-accent); font-size:10px; border-radius:0; }
.msp-10k #main .nc-msp-plan h3 { font-size:27px; min-height:2.2em; line-height:1.1; }
.msp-10k #main .nc-msp-plan > p:not([class]) { font-size:15px; }
.msp-10k #main .nc-msp-plan__price strong { font-size:48px; }
.msp-10k #main .nc-msp-plan :is(.nc-msp-plan__price span,.nc-msp-plan__cadence,.nc-msp-plan__annual,.nc-msp-plan__saving) { font-size:13px; }
.msp-10k #main .nc-msp-plan .nc-button { padding:12px; font-size:14px; }
.msp-10k #main .nc-msp-calculator { max-width:none; border-radius:14px; box-shadow:none; background:var(--mx-paper); }
.msp-10k #main .nc-msp-calculator > header h3 { font-weight:400; font-size:28px; line-height:1.2; }
.msp-10k #main .nc-migration .nc-button { color:#f8f9ff; border-color:#8196bd; background:transparent; }
.msp-10k #main .nc-faq > .nc-shell { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:64px; align-items:start; }
.msp-10k #main .nc-faq__items { max-width:none; margin:0; }
.msp-10k #main .nc-faq summary { font-size:18px; line-height:1.5; font-weight:400; padding:22px 0; }
.msp-10k #main .nc-final { position:relative; isolation:isolate; overflow:hidden; background:var(--mx-paper); color:var(--mx-ink); padding:88px 0; }
.msp-10k #main .nc-final :is(h2,p) { color:var(--mx-ink); margin-left:0; text-align:left; }
.msp-10k #main .nc-final h2 { max-width:21ch; }
.msp-10k #main .nc-final::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#eef1fafc 35%,#eef1face),var(--mx-ending-image); background-size:cover; background-position:center; }
.msp-10k #main .nc-final .nc-actions { justify-content:flex-start; }
.msp-10k #main .nc-final .nc-button--secondary { color:var(--mx-ink); }

@media (prefers-reduced-motion:no-preference) {
  .mx-visible .mx-status-dot { animation:mx-breathe 5s ease-in-out -1s infinite; }
  .mx-visible .mx-context-core { animation:mx-breathe 6s ease-in-out -2s infinite; }
  .mx-entered .mx-links path { animation:mx-connect 1.2s var(--mx-ease) both; }
  .mx-panels article[role="tabpanel"]:not([hidden]) { animation:mx-arrive .3s var(--mx-ease) both; }
}
@keyframes mx-breathe { 0%,100% { opacity:1; } 50% { opacity:.65; } }
@keyframes mx-connect { from { stroke-dasharray:1; stroke-dashoffset:1; } to { stroke-dasharray:1; stroke-dashoffset:0; } }
@keyframes mx-arrive { from { opacity:.4; transform:translateY(5px); } to { opacity:1; transform:translateY(0); } }
.mx-paused *, .mx-paused *::before, .mx-paused *::after { animation-play-state:paused!important; }

@media (max-width:1120px) {
  .msp-10k #main .mx-hero { padding-top:86px; }
  .msp-10k #main .mx-hero-copy { max-width:570px; }
  .mx-film-tools,.mx-film-progress { left:28px; right:28px; }
  .mx-context-layout { gap:32px; }
  .mx-cockpit { grid-template-columns:240px minmax(0,1fr); }
  .msp-10k #main :is(.nc-pillars,.nc-faq) > .nc-shell { gap:32px; }
  .msp-10k #main .nc-two-column { gap:32px; }
  .msp-10k #main .nc-msp-plan-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:900px) {
  .msp-10k #main :is(.mx-shell,.nc-shell) { width:calc(100% - 48px); }
  .mx-context-layout { grid-template-columns:1fr; gap:30px; }
  .msp-10k #main .mx-proof-layout .mx-head { grid-template-columns:1fr; gap:0; }
  .msp-10k #main .mx-proof-layout .mx-head > p:last-child { margin-top:20px; }
  .msp-10k #main :is(.mx-section,.nc-section) { padding:64px 0; }
  .msp-10k #main :is(.nc-pillars,.nc-faq) > .nc-shell { display:block; }
  .msp-10k #main .nc-pillars .nc-section-head { max-width:700px; }
  .msp-10k #main .nc-two-column { grid-template-columns:1fr; }
}
@media (max-width:720px) {
  .msp-10k #main :is(.mx-shell,.nc-shell) { width:calc(100% - 40px); }
  .msp-10k #main .mx-hero { padding:82px 0 22px; min-height:0; }
  .mx-hero-art img { object-position:70% center; opacity:.6; }
  .mx-hero-veil { background:linear-gradient(180deg,#f8f9fff5 0%,#f8f9fff0 64%,#f8f9ffbb 100%); }
  .msp-10k #main .mx-hero h1 { font-size:clamp(40px,10.4vw,44px)!important; max-width:100%; margin:16px 0 22px; }
  .mx-hero .mx-lead { font-size:16px; }
  .mx-difference { font-size:16px; }
  .mx-actions { flex-direction:column; align-items:stretch; }
  .mx-actions > *, .mx-actions [data-mx-film-open] { width:100%; }
  .mx-hero-price { font-size:13px; }
  .mx-assurances { padding:16px; margin-top:26px; gap:10px 18px; font-size:12px; grid-template-columns:1fr; }
  .msp-10k #main .nc-msp-matrix__hint { display:block; }
  .msp-10k #main .nc-msp-matrix th:first-child { width:46%; }
  .msp-10k #main h2 { font-size:clamp(32px,8.8vw,40px); }
  .msp-10k #main :is(.mx-head,.nc-section-head) > p:last-child:not(.mx-eyebrow,.nc-eyebrow) { font-size:17px; margin-top:20px; }
  .mx-cockpit { display:block; border-radius:12px; }
  .mx-client,.mx-chrome { padding-inline:18px; }
  .mx-cockpit > .mx-client { flex-wrap:nowrap; padding-bottom:20px; }
  .mx-client-id { display:none; }
  .mx-cockpit > .mx-record { margin:0 18px; padding:18px 0; grid-template-columns:1fr 1fr; gap:12px; border-block:1px solid #34415f; }
  .mx-record > div:last-child { grid-column:1/-1; }
  .mx-workspace { padding-top:20px; border:0; }
  .mx-tabs { padding-inline:18px; gap:7px; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mx-tabs button { min-height:46px; }
  .mx-panels { padding-inline:18px; }
  .mx-panels article { min-height:320px; padding:18px; }
  .mx-cockpit-bottom,.mx-cockpit figcaption { padding-inline:18px; }
  .mx-panel-meta { gap:8px; margin-bottom:18px; }
  .mx-network { padding:20px 14px; }
  .mx-network-top,.mx-network figcaption { padding-inline:0; }
  .mx-network svg { min-height:0; }
  .mx-context-map ul { gap:0 8px; grid-template-rows:56px 160px 56px; }
  .mx-context-map { min-height:272px; }
  .mx-context-map li { font-size:14px; }
  .msp-10k #main .nc-msp-onboarding .nc-flow { grid-template-columns:1fr; }
  .msp-10k #main .nc-lifecycle .nc-flow { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .msp-10k #main .nc-migration .nc-flow { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .msp-10k #main :is(.nc-lifecycle,.nc-migration) .nc-flow li { min-height:102px; padding:20px 12px; }
  .msp-10k #main :is(.nc-lifecycle,.nc-migration) .nc-flow li strong { font-size:16px; }
  .msp-10k #main .nc-benefit-grid { grid-template-columns:1fr; gap:0; }
  .msp-10k #main .nc-benefit-grid article { padding:22px 0; min-height:0; }
  .msp-10k #main .nc-pillar-grid article { padding:22px 0; min-height:0; }
  .msp-10k #main .nc-modules ul { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .msp-10k #main .nc-automation-example ol { padding:8px 18px; }
  .msp-10k #main .nc-automation-example ol li { grid-template-columns:24px minmax(0,1fr); gap:10px; }
  .msp-10k #main .nc-automation-example ol small { grid-column:2; justify-self:start; }
  .msp-10k #main .nc-msp-plan-grid { grid-template-columns:1fr; }
  .msp-10k #main .nc-msp-plan h3 { min-height:0; }
  .msp-10k #main .nc-msp-plan > p:not([class]) { min-height:0; }
  .msp-10k #main .nc-msp-plan__price { margin-top:12px; }
  .msp-10k #main .nc-faq summary { font-size:17px; }
  .msp-10k #main .nc-final { padding:64px 0; }
}
@media (prefers-reduced-motion:reduce) {
  .msp-10k *, .msp-10k *::before, .msp-10k *::after { animation:none!important; transition:none!important; transition-delay:0s!important; scroll-behavior:auto!important; }
  .msp-10k .mx-links path { stroke-dashoffset:0; }
  .mx-rail path, .mx-js .mx-rail path { stroke-dashoffset:0; }
  .mx-rail circle, .mx-js .mx-rail circle { opacity:.9; }
  .mx-band .mx-cta-row, .mx-chips { opacity:1; transform:none; }
}

/* ---------- Opt-in film: the regular page is complete before the film is requested. ---------- */
.msp-10k #main .mx-film { position:relative; height:var(--mx-film-height); background:var(--mx-canvas); scroll-margin-top:var(--mx-stage-top); }
.mx-stage { position:sticky; top:var(--mx-stage-top); height:calc(100svh - var(--mx-stage-top)); min-height:420px; overflow:hidden; isolation:isolate; background:var(--mx-canvas); color:var(--mx-ink); }
.mx-stage-media { position:absolute; inset:0; margin:0; background:var(--mx-canvas); }
.mx-stage-media video, .mx-film-poster { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:62% center; will-change:transform; transform:translateZ(0); }
.mx-film-poster { background-position:62% center; background-size:cover; }
.mx-stage-media video { opacity:0; transition:opacity .42s var(--mx-ease); }
.mx-video-ready .mx-stage-media video { opacity:1; }
.mx-video-failed .mx-stage-media video { display:none; }
.mx-film-veil { position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(90deg,rgba(248,249,255,.92),rgba(248,249,255,.8) 33%,rgba(248,249,255,0) 70%); }
.mx-film-tools { position:absolute; top:22px; left:48px; right:48px; z-index:5; display:flex; align-items:center; gap:12px; font-size:12px; }
.mx-film-tools > span { margin-right:auto; font:11px/1.4 var(--mx-mono); text-transform:uppercase; letter-spacing:.12em; padding:12px 16px; background:#f8f9fff2; border-radius:5px; }
.mx-film-tools :is(a,button) { min-height:44px; display:inline-flex; align-items:center; padding:10px 16px; border:1px solid var(--mx-control); background:#f8f9fff2; color:var(--mx-ink); font:inherit; font-size:13px; text-decoration:none; border-radius:5px; cursor:pointer; }
.mx-film-progress { position:absolute; bottom:24px; left:48px; right:48px; z-index:5; list-style:none; margin:0; padding:18px 22px; display:flex; justify-content:space-between; gap:20px; background:#f8f9fff5; border-radius:5px; color:var(--mx-muted); font:12px/1.5 var(--mx-mono); }
.mx-film-progress::before { content:""; position:absolute; inset:0 0 auto; height:2px; background:var(--mx-accent); transform-origin:left; transform:scaleX(var(--journey,0)); }
.mx-film-progress li { display:flex; align-items:center; gap:12px; transition:color .25s; text-transform:uppercase; letter-spacing:.08em; }
.mx-film-progress li span { opacity:.7; font-size:10px; }
.mx-film-progress li.is-current { color:var(--mx-accent-deep); font-weight:700; }
.mx-film-grid { position:absolute; inset:0; z-index:2; box-sizing:border-box; padding:84px 0 104px; display:grid; align-items:center; width:min(calc(100% - 96px),1560px); margin-inline:auto; }
.mx-band { grid-area:1/1; position:relative; max-width:620px; opacity:0; pointer-events:none; }
.mx-band.mx-is-on { pointer-events:auto; }
.mx-band::before { content:""; position:absolute; inset:-58% -46%; z-index:-1; pointer-events:none; opacity:calc(.35 + .65 * var(--k,1)); background:radial-gradient(ellipse 50% 50% at 50% 50%,rgba(248,249,255,var(--mx-scrim,.9)) 0%,rgba(248,249,255,calc(var(--mx-scrim,.9) * .92)) 62%,rgba(248,249,255,0) 100%); }
.mx-band[data-band="0"] { --mx-scrim:.84; }
.mx-band[data-band="1"] { --mx-scrim:.92; }
.mx-band[data-band="2"] { --mx-scrim:.92; }
.mx-band[data-band="3"] { --mx-scrim:.9; max-width:560px; }
.mx-band .mx-kicker { margin:0 0 16px; color:var(--mx-accent); font:600 12.5px/1.4 var(--mx-mono); letter-spacing:.16em; text-transform:uppercase; text-shadow:var(--mx-tshadow); }
.msp-10k #main .mx-band h2 { margin:0; max-width:none; color:var(--mx-ink); font-size:clamp(44px,4.8vw,78px); text-shadow:var(--mx-tshadow); }
.mx-band .mx-sub { margin:20px 0 0; max-width:38ch; color:var(--mx-muted); font-size:clamp(17px,1.45vw,22px); line-height:1.55; text-shadow:var(--mx-tshadow); }
.mx-band .mx-cta-row { display:flex; flex-wrap:wrap; gap:12px; margin-top:32px; opacity:var(--kb,0); transform:translateY(calc((1 - var(--kb,0)) * 14px)); }
.mx-chips { display:flex; flex-wrap:wrap; gap:8px; margin:26px 0 0; padding:0; list-style:none; opacity:var(--kb,0); }
.mx-chips li { display:inline-flex; align-items:center; gap:7px; padding:7px 12px; border:1px solid #4c62b02e; border-radius:999px; background:#ffffffbf; backdrop-filter:blur(10px); color:var(--mx-muted); font-size:12.5px; font-weight:600; }
.mx-chips li i { width:7px; height:7px; border-radius:50%; background:var(--mx-accent-soft); box-shadow:0 0 8px #4d7dffb3; }
/* Split spans: assembly driven by each band's --k. */
.mx-w { display:inline-block; white-space:pre; }
.mx-c { display:inline-block; }
.e-drift .mx-w { --kc:clamp(0,calc((var(--k,0) - var(--th,0)) * 2.8),1); opacity:var(--kc); transform:translateY(calc((1 - var(--kc)) * -26px)); }
.e-scatter .mx-c { --kc:clamp(0,calc((var(--k,0) - var(--th,0)) * 2.6),1); opacity:var(--kc); transform:translate(calc((1 - var(--kc)) * var(--jx,0px)),calc((1 - var(--kc)) * var(--jy,0px))) rotate(calc((1 - var(--kc)) * var(--jr,0deg))); }
.e-depth .mx-w { --kc:clamp(0,calc((var(--k,0) - var(--th,0)) * 2.8),1); opacity:var(--kc); transform:scale(calc(.84 + .16 * var(--kc))); }
.e-rise .mx-w { --kc:clamp(0,calc((var(--k,0) - var(--th,0)) * 3),1); opacity:var(--kc); transform:translateY(calc((1 - var(--kc)) * 22px)); }
.e-rise .mx-sub { opacity:var(--ks2,0); transform:translateY(calc((1 - var(--ks2,0)) * 12px)); }
/* The scroll cue and the honest loader. */
.mx-cue { position:absolute; bottom:88px; left:50%; z-index:3; display:grid; justify-items:center; gap:8px; color:var(--mx-muted); font:11px/1.4 var(--mx-mono); letter-spacing:.2em; text-transform:uppercase; transform:translateX(-50%); opacity:var(--cue,1); transition:opacity .3s var(--mx-ease); pointer-events:none; }
.mx-cue i { width:1px; height:34px; background:linear-gradient(180deg,var(--mx-accent),transparent); }
@media (prefers-reduced-motion:no-preference) {
  .mx-cue i { animation:mx-cue-drop 2.4s var(--mx-ease) -1.2s infinite; transform-origin:top; }
  @keyframes mx-cue-drop { 0% { transform:scaleY(0); } 45%,100% { transform:scaleY(1); } }
}
.mx-loader { position:absolute; bottom:88px; left:50%; z-index:4; display:inline-flex; align-items:center; gap:10px; padding:10px 16px; border:1px solid #4c62b02e; border-radius:999px; background:#ffffffdb; backdrop-filter:blur(12px); box-shadow:0 10px 30px #0c16431a; color:var(--mx-muted); font-size:13px; font-weight:600; letter-spacing:.04em; transform:translateX(-50%); transition:opacity .42s var(--mx-ease),transform .42s var(--mx-ease); pointer-events:none; }
.mx-loader svg { width:22px; height:22px; transform:rotate(-90deg); flex:none; }
.mx-loader svg circle { fill:none; stroke-width:4; }
.mx-loader .mx-loader-track { stroke:#4c62b038; }
.mx-loader .mx-loader-fill { stroke:var(--mx-accent); stroke-linecap:round; }
.mx-loader b { color:var(--mx-ink); font-weight:700; font-variant-numeric:tabular-nums; min-width:4ch; text-align:right; }
.mx-loader--docked { left:auto; right:48px; bottom:88px; transform:translateX(0) scale(.94); }
.mx-video-ready .mx-loader { opacity:0; visibility:hidden; transition:opacity .42s var(--mx-ease),visibility 0s .42s; }
.mx-video-failed .mx-loader { display:none; }
.mx-stage:not(.mx-video-ready):not(.mx-video-failed) .mx-cue { opacity:0; }
@media (max-width:1100px) {
  .mx-film-grid { width:min(calc(100% - 56px),1560px); }
  .mx-band { max-width:72%; }
}
@media (max-height:700px) {
  .mx-film-grid { padding:72px 0 84px; }
  .msp-10k #main .mx-band h2 { font-size:clamp(36px,4vw,54px); }
  .mx-band .mx-sub { font-size:16px; margin-top:14px; }
  .mx-band .mx-kicker { margin-bottom:12px; }
  .mx-film-tools { top:12px; }
  .mx-film-progress { bottom:12px; padding-block:12px; }
  .mx-cue,.mx-loader { bottom:64px; }
}
@media (max-height:560px) {
  .mx-stage { min-height:320px; }
  .mx-cue,.mx-chips,.mx-film-progress { display:none; }
  .mx-loader { bottom:16px; }
}
@media (max-width: 720px),
       (orientation: portrait) and (max-width: 1024px),
       (orientation: portrait) and (pointer: coarse),
       (orientation: landscape) and (pointer: coarse) and (max-height: 560px),
       (prefers-reduced-motion: reduce) {
  .msp-10k #main .mx-film, [data-mx-film-controls] { display:none!important; }
}

.mx-tabs button { font-family:inherit; font-size:13px; line-height:1.35; }
.mx-film-tools button { font-family:inherit; }

/* The floating header has a negative flow margin; reserve it before the product subnav. */
.msp-10k > .neoo-subnav { margin-top:var(--partner-overview-header-h,64px); }

.msp-10k #main .mx-hero [data-neoo-role="eyebrow"] { font-size:11px!important; font-weight:400!important; line-height:1.6!important; letter-spacing:.14em!important; }

/* Keep mobile anchor stops within the shared navigation tracker threshold (142px). */
@media (max-width:1120px) { .msp-10k #main [data-neoo-section] { scroll-margin-top:calc(var(--partner-overview-header-h,72px) + 64px); } }

.msp-10k #main .nc-automation-example li small { color:#edf2ff; background:#26365d; border:1px solid #71809e; }
