/* 2026 update: industries marquee, security section, scroll-aware booking bar */
.px-industries{background:#071525;color:#bdd8e5;border-top:1px solid rgba(255,255,255,.07);padding:22px 0;overflow:hidden}
.px-ind-inner{display:flex;align-items:center;gap:34px}
.px-ind-label{flex:none;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#8cdbf7;font-weight:700}
.px-ind-viewport{position:relative;overflow:hidden;flex:1;min-width:0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.px-ind-track{display:flex;width:max-content;animation:px-marquee 48s linear infinite}
.px-ind-track ul{display:flex;margin:0;padding:0;list-style:none}
.px-ind-track li{position:relative;padding:0 28px;font-size:18px;font-weight:600;letter-spacing:-.01em;color:#fff;white-space:nowrap}
.px-ind-track li:after{content:'';position:absolute;right:-3px;top:50%;width:5px;height:5px;border-radius:50%;background:#00aeef;transform:translateY(-50%)}
.px-industries:hover .px-ind-track{animation-play-state:paused}
@keyframes px-marquee{to{transform:translateX(-50%)}}
@media(max-width:700px){.px-ind-inner{flex-direction:column;align-items:flex-start;gap:12px}.px-ind-viewport{width:100%}.px-ind-track li{font-size:16px;padding:0 20px}}
@media(prefers-reduced-motion:reduce){.px-ind-track{animation:none;width:auto}.px-ind-track ul{flex-wrap:wrap;row-gap:8px}.px-ind-track ul[aria-hidden]{display:none}.px-ind-viewport{-webkit-mask-image:none;mask-image:none}}

.px-security{padding:120px 0;background:#f1f8fb}
.px-sec-head{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end}
.px-sec-head h2{margin-top:16px}
.px-sec-head .lead{max-width:470px}
.px-sec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:56px}
.px-sec-grid article{background:#fff;border:1px solid #d6e6ee;border-radius:14px;padding:28px 26px 26px;transition:transform .35s,box-shadow .35s,border-color .35s}
.px-sec-grid article:hover{transform:translateY(-3px);border-color:#9fd3ea;box-shadow:0 18px 40px -22px rgba(7,21,37,.35)}
.px-sec-grid svg{width:30px;height:30px;stroke:#2d388a;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.px-sec-grid strong{display:block;margin:18px 0 8px;font-size:19px;line-height:1.25;letter-spacing:-.02em;color:#142435}
.px-sec-grid p{font-size:15px;color:#5d6f7f}
.px-sec-foot{display:flex;flex-wrap:wrap;gap:12px 26px;align-items:center;justify-content:space-between;margin-top:34px;padding-top:26px;border-top:1px solid #cfe1ea;font-size:15px;color:#5d6f7f}
.px-sec-foot a{color:#2d388a;font-weight:700;border-bottom:1px solid currentColor}
@media(max-width:900px){.px-sec-head{grid-template-columns:1fr;gap:18px}.px-sec-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.px-security{padding:80px 0}.px-sec-grid{grid-template-columns:1fr;margin-top:36px}}

.px-cta{position:fixed;z-index:60;left:50%;bottom:22px;display:flex;align-items:center;gap:22px;padding:10px 10px 10px 24px;background:rgba(7,21,37,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(140,219,247,.22);border-radius:999px;box-shadow:0 22px 50px -18px rgba(0,0,0,.55);color:#fff;transform:translate(-50%,140%);opacity:0;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .3s;pointer-events:none}
.px-cta.show{transform:translate(-50%,0);opacity:1;pointer-events:auto}
.px-cta-text{font-size:15px;font-weight:600;white-space:nowrap}
.px-cta-btn{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border-radius:999px;background:#00aeef;color:#071525;font-size:14px;font-weight:700;white-space:nowrap;transition:background .2s}
.px-cta-btn:hover{background:#8cdbf7}
@media(max-width:700px){.px-cta{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));transform:translateY(140%);gap:12px;padding:8px 8px 8px 18px;border-radius:16px;justify-content:space-between}.px-cta.show{transform:translateY(0)}.px-cta-text{font-size:13px;white-space:normal;line-height:1.3}}
@media(prefers-reduced-motion:reduce){.px-cta{transition:opacity .2s}}
@media print{.px-cta{display:none}}

/* hero composition: headline sized so the industries band sits near the fold */
.hero h1{font-size:clamp(46px,5.3vw,80px)}
@media(max-width:700px){.hero h1{font-size:clamp(38px,10.4vw,60px)}}
.px-sec-head{grid-template-columns:1.15fr .85fr}
@media(max-width:900px){.px-sec-head{grid-template-columns:1fr}}
.px-consent{font-family:Hanken,Arial,sans-serif}

/* ---------- brand tokens (logo: ink #222831, indigo #2d388a -> cyan #00aeef) ---------- */
:root{--px-ink:#222831;--px-ink-deep:#181d25;--px-indigo:#2d388a;--px-cyan:#00aeef;--px-sky:#8cdbf7;--px-grad:linear-gradient(100deg,#2d388a 0%,#1a6fc0 55%,#00aeef 100%)}
.hero{background:radial-gradient(ellipse at 80% 42%,#2d388a59 0,#22283100 55%),radial-gradient(ellipse at 15% 110%,#00aeef1f 0,#22283100 45%),linear-gradient(180deg,#222831,#181d25)!important}
.px-industries{background:#181d25;border-top-color:#ffffff12}
.close{background:radial-gradient(ellipse at 50% 120%,#00aeef33,transparent 60%),linear-gradient(120deg,#222831 0%,#2d388a 100%)!important}
.px-cta{background:rgba(34,40,49,.92)}

/* ---------- alignment fixes ---------- */
.hero .stage-status{top:-18px!important;bottom:auto!important;left:7%!important;right:auto!important}
.narrative>.reality{grid-column:1/-1;display:grid;grid-template-columns:.9fr 1.1fr;gap:20px 90px;align-items:start;margin-top:72px}
.narrative>.reality>.kicker,.narrative>.reality>p,.narrative>.reality>strong{grid-column:1}
.narrative>.reality>.reality-grid{grid-column:2;grid-row:1/span 3;margin:0}
.narrative>.reality .reality-grid span{min-height:104px;font-size:15px}
.proof-stats strong{white-space:nowrap;font-size:clamp(46px,5vw,78px)!important;line-height:1}
.proof-band .wrap>.proof-intro{align-items:end}
.chain-categories{align-items:start}
.chain-next-cta{margin-top:28px!important}
.footer .wrap{display:flex!important;flex-wrap:wrap;align-items:center;gap:10px 28px}
.footer .wrap>span:first-child{margin-right:auto}
.footer a,.footer .px-analytics-settings{display:inline-block!important;margin:0!important}
@media(max-width:900px){.narrative>.reality{grid-template-columns:1fr}.narrative>.reality>.reality-grid{grid-column:1;grid-row:auto}}
@media(max-width:700px){.footer .wrap>span:first-child{width:100%}.narrative>.reality .reality-grid{grid-template-columns:1fr 1fr}}

/* ---------- not another tool ---------- */
.px-not{background:#222831;color:#fff;padding:120px 0;position:relative;overflow:hidden}
.px-not:before{content:'';position:absolute;inset:auto -10% -40% 40%;height:70%;background:radial-gradient(ellipse,#2d388a66,transparent 65%);pointer-events:none}
.px-not .wrap{position:relative}
.px-not-head{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end}
.px-not h2{margin-top:16px;color:#fff}.px-not h2 em{font-style:normal;background:linear-gradient(100deg,#8cdbf7,#00aeef);-webkit-background-clip:text;background-clip:text;color:transparent}
.px-not .lead{color:#c5d3dc;max-width:470px}
.px-not-grid{display:grid;grid-template-columns:repeat(4,1fr) 1.25fr;gap:14px;margin-top:60px}
.px-not-grid article{display:flex;flex-direction:column;padding:24px 22px;border:1px solid #ffffff1a;border-radius:14px;background:#ffffff08}
.px-not-grid small{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#93a6b4;font-weight:700}
.px-not-grid strong{margin:14px 0 8px;font-size:20px;line-height:1.2;letter-spacing:-.02em;color:#fff}
.px-not-grid p{font-size:14px;color:#a9b9c4;flex:1}
.px-not-grid span{margin-top:20px;padding-top:14px;border-top:1px solid #ffffff1a;font-size:13px;color:#dbe6ec}
.px-not-grid span b{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#7f93a2;margin-bottom:4px}
.px-not-grid .is-px{background:linear-gradient(160deg,#2d388a,#1f2f6e 60%,#123a66);border-color:#00aeef80;box-shadow:0 30px 60px -30px #00aeef66}
.px-not-grid .is-px small{color:#8cdbf7}.px-not-grid .is-px strong{font-size:24px}.px-not-grid .is-px p{color:#dbe9f2}.px-not-grid .is-px span{border-color:#ffffff33;color:#fff}.px-not-grid .is-px span b{color:#8cdbf7}
@media(max-width:1100px){.px-not-grid{grid-template-columns:repeat(2,1fr)}.px-not-grid .is-px{grid-column:1/-1}}
@media(max-width:700px){.px-not{padding:80px 0}.px-not-head{grid-template-columns:1fr;gap:16px}.px-not-grid{grid-template-columns:1fr}}

/* ---------- how we start ---------- */
.px-start{padding:120px 0;background:#fff}
.px-start-head{max-width:720px}.px-start-head h2{margin:16px 0 18px}
.px-start-steps{list-style:none;margin:56px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:s}
.px-start-steps li{position:relative;padding:34px 26px 0 0}
.px-start-steps li:before{content:'';position:absolute;left:0;right:0;top:0;height:2px;background:#dce7ec}
.px-start-steps li:after{content:'';position:absolute;left:0;top:0;height:2px;width:0;background:var(--px-grad);transition:width 1s cubic-bezier(.2,.8,.2,1)}
.px-start-steps.visible li:after{width:100%}
.px-start-steps.visible li:nth-child(2):after{transition-delay:.25s}.px-start-steps.visible li:nth-child(3):after{transition-delay:.5s}.px-start-steps.visible li:nth-child(4):after{transition-delay:.75s}
.px-start-steps i{font-style:normal;font-size:12px;font-weight:700;letter-spacing:.14em;color:#2d388a}
.px-start-steps strong{display:block;margin:12px 0 8px;font-size:21px;line-height:1.2;letter-spacing:-.02em;color:#222831}
.px-start-steps p{font-size:15px;color:#5d6f7f}
@media(max-width:900px){.px-start-steps{grid-template-columns:1fr 1fr;row-gap:36px}}
@media(max-width:620px){.px-start{padding:80px 0}.px-start-steps{grid-template-columns:1fr}}

/* ---------- motion ---------- */
@view-transition{navigation:auto}
.site-head,.m-header{view-transition-name:px-header}
::view-transition-old(root){animation:px-vt-out .28s cubic-bezier(.4,0,1,1) both}
::view-transition-new(root){animation:px-vt-in .5s cubic-bezier(.2,.8,.2,1) both}
@keyframes px-vt-out{to{opacity:0;transform:translateY(-12px)}}
@keyframes px-vt-in{from{opacity:0;transform:translateY(18px)}}
.hero h1{animation:px-rise 1s cubic-bezier(.2,.8,.2,1) both}
.hero h1 span{display:block;animation:px-rise 1s .18s cubic-bezier(.2,.8,.2,1) both}
.hero .lead{animation:px-rise 1s .32s cubic-bezier(.2,.8,.2,1) both}
.hero .hero-actions,.hero .hero-proofs{animation:px-rise 1s .44s cubic-bezier(.2,.8,.2,1) both}
main#top .reveal h2{transition:transform 1s cubic-bezier(.2,.8,.2,1),opacity 1s,filter 1s;transform:translateY(.4em);opacity:0;filter:blur(6px)}
main#top .reveal.visible h2{transform:none;opacity:1;filter:none}
.px-sec-grid.visible article,.px-not-grid.visible article{animation:px-rise .8s cubic-bezier(.2,.8,.2,1) both}
.px-sec-grid.visible article:nth-child(2),.px-not-grid.visible article:nth-child(2){animation-delay:.08s}
.px-sec-grid.visible article:nth-child(3),.px-not-grid.visible article:nth-child(3){animation-delay:.16s}
.px-sec-grid.visible article:nth-child(4),.px-not-grid.visible article:nth-child(4){animation-delay:.24s}
.px-sec-grid.visible article:nth-child(5),.px-not-grid.visible article:nth-child(5){animation-delay:.32s}
.px-sec-grid.visible article:nth-child(6){animation-delay:.4s}
@keyframes px-rise{from{opacity:0;transform:translateY(22px)}}
.px-progress{position:fixed;z-index:70;left:0;top:0;height:2px;width:100%;background:var(--px-grad);transform-origin:0 50%;transform:scaleX(0);pointer-events:none}
.button{transition:transform .25s,box-shadow .25s,background .25s}
.button:hover{transform:translateY(-2px);box-shadow:0 14px 28px -14px #2d388a99}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}.hero h1,.hero h1 span,.hero .lead,.hero .hero-actions,.hero .hero-proofs,.px-sec-grid.visible article,.px-not-grid.visible article{animation:none}main#top .reveal h2{transform:none;opacity:1;filter:none;transition:none}.px-progress{display:none}.px-start-steps li:after{width:100%;transition:none}}

/* ================= bright direction (matches NEXT decks): light base, dark only for emphasis ================= */
.hero{background:radial-gradient(ellipse at 88% 30%,#00aeef1c 0,transparent 48%),radial-gradient(ellipse at 5% 105%,#2d388a14 0,transparent 50%),linear-gradient(180deg,#f8fafc 0%,#eef3f8 100%)!important;color:#222831!important}
.hero:before{border-color:#2d388a14!important;box-shadow:0 0 0 100px #2d388a05,0 0 0 220px #2d388a03!important}
.hero h1{color:#222831}
.hero h1 span{background:linear-gradient(100deg,#2d388a 0%,#1a6fc0 52%,#00aeef 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important}
.hero .kicker.light{color:#2d388a!important}
.hero .lead{color:#46535f!important}
.hero .button.white{background:#2d388a!important;color:#fff!important;border-color:#2d388a!important}
.hero .link.light{color:#222831!important;border-color:#222831!important}
.hero-proofs span{border-color:#d3dee6!important;color:#46535f!important;background:#ffffffb3}
.hero-foot{color:#6b7a86!important;border-top-color:#d9e3ea!important}
.px-industries{background:#fff;border-top:1px solid #e3eaf0;border-bottom:1px solid #e3eaf0}
.px-ind-label{color:#2d388a}.px-ind-track li{color:#222831}
.chain-story{background:linear-gradient(180deg,#f4f7fb,#eef3f8)!important;color:#222831!important}
.chain-story h2,.chain-story h3{color:#222831}
.chain-story .kicker.light{color:#2d388a!important}
.chain-top .lead{color:#46535f!important}
.chain-title-gradient{background:linear-gradient(100deg,#2d388a 0%,#1a6fc0 52%,#00aeef 100%)!important;-webkit-background-clip:text!important;background-clip:text!important}
.chain-rail-title{color:#2d388a!important}
.chain-menu a{color:#6b7a86!important;border-left-color:#d3dee6!important}.chain-menu a span{color:#94a3ae!important}
.chain-menu a.is-active{color:#222831!important;border-color:#00aeef!important}.chain-menu a.is-active span{color:#2d388a!important}
.chain-rail-foot{border-top-color:#d3dee6!important;color:#5d6f7f!important}
.chain-copy small{color:#2d388a!important}.chain-copy p{color:#46535f!important}
.chain-copy .chain-outcome{border-top-color:#d3dee6!important;color:#222831!important}.chain-copy .chain-outcome b{color:#2d388a!important}
.chain-scene{box-shadow:0 30px 70px -32px #22283152!important}
.chain-stage:not(.is-active) .chain-copy{opacity:.45}

/* ---- hero: Vorgang 0427 plays itself ---- */
.px-deal{position:relative;height:auto!important;display:flex;flex-direction:column;align-items:center;gap:14px}
.pxd-card{position:relative;width:min(100%,460px);background:#fff;border:1px solid #dbe5ec;border-radius:20px;padding:24px 24px 18px;box-shadow:0 40px 80px -40px #22283166,0 2px 0 #fff inset;overflow:hidden}
.pxd-card:before{content:'';position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(100deg,#2d388a,#00aeef)}
.pxd-head{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;font-weight:700;color:#5d6f7f}
.pxd-state{font-style:normal;font-size:11px;letter-spacing:.06em;padding:5px 10px;border-radius:999px;background:#eef2f5;color:#6b7a86;white-space:nowrap;transition:background .4s,color .4s}
.px-deal.is-live .pxd-state{background:#e6f6fd;color:#0b77a8}
.px-deal.is-done .pxd-state{background:#2d388a;color:#fff}
.pxd-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 14px;margin:18px 0 4px}
.pxd-now{font-size:clamp(38px,4.2vw,52px);line-height:1;letter-spacing:-.045em;color:#222831;font-variant-numeric:tabular-nums;transition:color .4s}
.px-deal.is-done .pxd-now{color:#2d388a}
.pxd-save{font-size:14px;font-weight:700;color:#0b8a5f;background:#e3f6ee;border-radius:8px;padding:4px 9px;opacity:0;transform:translateY(8px);transition:opacity .45s,transform .45s}
.px-deal.is-saved .pxd-save{opacity:1;transform:none}
.pxd-sub{font-size:13px;color:#6b7a86;margin:6px 0 16px!important;min-height:1.6em;transition:opacity .3s}
.pxd-steps{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.pxd-steps li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px 9px 34px;border-radius:10px;background:#f5f8fa;font-size:13px;font-weight:600;color:#9aa8b2;position:relative;transition:background .35s,color .35s}
.pxd-steps li:before{content:'';position:absolute;left:12px;top:50%;width:12px;height:12px;margin-top:-6px;border-radius:50%;border:2px solid #cfdae2;transition:all .35s}
.pxd-steps li i{font-style:normal;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#b2bec6;font-weight:700}
.pxd-steps li.on{background:#eef6fb;color:#222831}
.pxd-steps li.on:before{border-color:#00aeef;background:#00aeef;box-shadow:0 0 0 4px #00aeef22}
.pxd-steps li.on i{color:#2d388a}
.pxd-steps li.now{background:#e4f3fb}
.pxd-steps li:last-child.on i{color:#fff;background:#2d388a;padding:3px 7px;border-radius:6px}
.pxd-stamp{position:absolute;right:20px;top:64px;padding:8px 16px;border:2px solid #2d388a;border-radius:10px;color:#2d388a;font-weight:700;font-size:15px;letter-spacing:.08em;text-transform:uppercase;background:#fffffff2;transform:rotate(-8deg) scale(1.6);opacity:0;transition:opacity .25s,transform .45s cubic-bezier(.3,1.6,.5,1)}
.px-deal.is-done .pxd-stamp{opacity:1;transform:rotate(-8deg) scale(1)}
.pxd-cap{font-size:11px;letter-spacing:.06em;color:#7d8b96}
@media(max-width:700px){.px-deal{margin-top:34px}.pxd-card{padding:20px 18px 14px}.pxd-steps li{font-size:12px;padding:8px 10px 8px 30px}.pxd-stamp{top:56px;right:14px;font-size:13px}}

/* ---- below hero: hundreds of purchases flip to negotiated as you scroll ---- */
.px-many{padding:110px 0 100px;background:#fff}
.px-many-head{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end}
.px-many-head h2{margin-top:16px}.px-many-head h2 em{font-style:normal;color:#8a98a3}
.px-many-head .lead{max-width:470px}
.px-many-grid{list-style:none;margin:56px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.px-many-grid li{position:relative;padding:16px 16px 14px;border:1px solid #e3eaf0;border-radius:14px;background:#f8fafc;transition:background .5s,border-color .5s,transform .5s,box-shadow .5s;min-width:0}
.px-many-grid small{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#94a3ae;font-weight:700}
.px-many-grid strong{display:block;margin:6px 0 12px;font-size:16px;line-height:1.25;color:#222831;letter-spacing:-.01em}
.px-many-grid em{font-style:normal;display:block;position:relative;height:22px;overflow:hidden;font-size:12px;font-weight:700}
.px-many-grid em span{position:absolute;left:0;top:0;transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .5s;white-space:nowrap}
.px-many-grid .n{color:#a0aab2}
.px-many-grid .y{color:#2d388a;transform:translateY(110%);opacity:0}
.px-many-grid li.done{background:#fff;border-color:#9fd3ea;box-shadow:0 16px 34px -24px #2d388a66;transform:translateY(-2px)}
.px-many-grid li.done .n{transform:translateY(-110%);opacity:0}
.px-many-grid li.done .y{transform:none;opacity:1}
.px-many-grid li.done:after{content:'';position:absolute;right:14px;top:16px;width:16px;height:16px;border-radius:50%;background:#00aeef url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.3l2.2 2.2L11.5 5.7' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.px-many-foot{margin-top:24px;font-size:14px;color:#5d6f7f}
.px-many-foot b{font-size:20px;color:#2d388a;font-variant-numeric:tabular-nums}
.px-many-foot span{color:#94a3ae;font-size:12px}
@media(max-width:1000px){.px-many-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.px-many{padding:76px 0}.px-many-head{grid-template-columns:1fr;gap:16px}.px-many-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.px-many-grid li{padding:13px 12px 11px}.px-many-grid strong{font-size:14px}.px-many-grid li.done:after{right:10px;top:12px}}
@media(prefers-reduced-motion:reduce){.pxd-save,.pxd-stamp,.px-many-grid li,.px-many-grid em span{transition:none}}
/* refinements */
.hero h1{max-width:none!important}
.pxd-price{flex-direction:column;align-items:flex-start;gap:10px}
.pxd-stamp{top:74px;font-size:14px}
@media(max-width:700px){.px-many-grid li:last-child{grid-column:1/-1}.pxd-stamp{top:66px;font-size:12px}}

/* ================= premium pass ================= */
:root{--px-ease:cubic-bezier(.2,.8,.2,1);--px-spring:cubic-bezier(.34,1.4,.5,1);
--px-shadow:0 1px 1px rgba(16,24,40,.03),0 2px 4px -1px rgba(16,24,40,.04),0 8px 20px -6px rgba(16,24,40,.07),0 24px 48px -16px rgba(16,24,40,.10);
--px-shadow-hi:0 1px 1px rgba(16,24,40,.03),0 4px 8px -2px rgba(16,24,40,.05),0 16px 32px -8px rgba(16,24,40,.10),0 40px 70px -20px rgba(45,56,138,.20)}
/* headings: the heavier, tighter setting used on the walkthrough, everywhere */
main#top h1,main#top h2,body>div:first-child h1,body>div:first-child h2{font-weight:700!important;letter-spacing:-.056em!important;line-height:1.02!important;text-wrap:balance}
main#top h3,body>div:first-child h3{letter-spacing:-.03em}
/* one card language: hairline, layered soft shadow, spring hover */
.px-many-grid li,.px-sec-grid article,.pxd-card,.reality-grid span,.chain-category-list span,.explore-card,.chain-benefit,.delivery-principles>div,.opportunity-controls,.opportunity-result,.result-grid article,.bridge-grid article,.comparison-visual,.capacity-visual,.control-visual{
 border:1px solid rgba(34,40,49,.08)!important;border-radius:18px!important;background:#fff;box-shadow:var(--px-shadow)!important;
 transition:transform .55s var(--px-ease),box-shadow .55s var(--px-ease),border-color .55s var(--px-ease),background-color .55s var(--px-ease)!important}
.px-sec-grid article:hover,.reality-grid span:hover,.chain-category-list span:hover,.explore-card:hover,.chain-benefit:hover,.bridge-grid article:hover,.px-many-grid li.done:hover{transform:translateY(-4px)!important;box-shadow:var(--px-shadow-hi)!important;border-color:rgba(45,56,138,.18)!important}
.delivery-principles>div{padding:24px!important}
.px-start-steps li{padding-right:30px}
.button{border-radius:12px!important;box-shadow:0 1px 1px rgba(16,24,40,.06),0 6px 16px -6px rgba(45,56,138,.45);transition:transform .35s var(--px-ease),box-shadow .35s var(--px-ease),background .35s!important}
.button:hover{transform:translateY(-2px);box-shadow:0 2px 3px rgba(16,24,40,.06),0 14px 28px -10px rgba(45,56,138,.55)}
.px-not-grid article{border-radius:18px;transition:transform .55s var(--px-ease),border-color .55s,background .55s}
.px-not-grid article:hover{transform:translateY(-4px);border-color:#ffffff38;background:#ffffff0f}
.pxd-card{box-shadow:0 1px 1px rgba(16,24,40,.03),0 12px 24px -10px rgba(16,24,40,.10),0 50px 90px -30px rgba(45,56,138,.30)!important;border-radius:22px!important}

/* tiles: unfinished tiles sit back, then morph in on a diagonal wave */
.px-many-grid li{background:#f7f9fb}
.px-many-grid li:not(.done){box-shadow:none!important;border-color:rgba(34,40,49,.06)!important}
.px-many.js .px-many-grid li{opacity:0;transform:translateY(26px) scale(.94);filter:blur(8px)}
.px-many.js.in .px-many-grid li{opacity:1;transform:none;filter:none;transition:opacity .7s var(--px-ease),transform .9s var(--px-spring),filter .7s var(--px-ease),box-shadow .55s,border-color .55s,background-color .55s;transition-delay:calc(var(--d,0) * 55ms),calc(var(--d,0) * 55ms),calc(var(--d,0) * 55ms),0s,0s,0s}
.px-many-grid li.done{background:#fff;animation:px-pop .7s var(--px-spring)}
@keyframes px-pop{0%{transform:scale(.97)}45%{transform:scale(1.035)}100%{transform:none}}
.px-many-grid li.done:after{animation:px-check .5s var(--px-spring) both}
@keyframes px-check{from{transform:scale(0) rotate(-30deg);opacity:0}}
.px-many-grid li:before{content:'';position:absolute;inset:-1px;border-radius:inherit;pointer-events:none;box-shadow:0 0 0 0 rgba(0,174,239,.35);opacity:0}
.px-many-grid li.done:before{animation:px-ring .9s var(--px-ease)}
@keyframes px-ring{0%{opacity:1;box-shadow:0 0 0 0 rgba(0,174,239,.35)}100%{opacity:0;box-shadow:0 0 0 12px rgba(0,174,239,0)}}
@media(prefers-reduced-motion:reduce){.px-many.js .px-many-grid li{opacity:1;transform:none;filter:none}.px-many-grid li.done,.px-many-grid li.done:after,.px-many-grid li.done:before{animation:none}}

/* ================= sub-pages: bright shell like the decks ================= */
body>div#px-signature:has(.s-wrap){background:radial-gradient(ellipse at 85% 0%,#00aeef14 0,transparent 40%),linear-gradient(180deg,#f8fafc 0,#eef3f8 900px,#f4f7fb 100%)!important;color:#222831!important}
body>div#px-signature:has(.s-wrap) :is(:is(h1,h2)):not(.px-dark *){color:#222831!important}
body>div#px-signature:has(.s-wrap) :is(:is(h1,h2) span):not(.px-dark *){background:linear-gradient(100deg,#2d388a 0%,#1a6fc0 52%,#00aeef 100%);-webkit-background-clip:text;background-clip:text;color:transparent!important}
body>div#px-signature:has(.s-wrap) :is(.s-kicker):not(.px-dark *){color:#2d388a!important}
body>div#px-signature:has(.s-wrap) :is(:is(.s-lead,.ai-lead,.s-herofoot)):not(.px-dark *){color:#46535f!important}
body>div#px-signature:has(.s-wrap) :is(:is(.p-back,.p-link)):not(.px-dark *){color:#2d388a!important}
body>div#px-signature:has(.s-wrap) :is(.car-badges span):not(.px-dark *){color:#46535f!important;border-color:#d3dee6!important}
body>div#px-signature:has(.s-wrap) :is(:is(.s-wrap,.p-deephero,.ai-section)>p):not(.px-dark *){color:#46535f!important}
body>div#px-signature:has(.s-wrap) .s-herofoot span:before{color:#00aeef}
/* deliberate dark bands keep their own (dark) design */
body>div#px-signature .px-dark{color:#fff}

body>div#px-signature .ax-section:not(.px-dark){background:transparent!important}
body>div#px-signature .ax-section:not(.px-dark) .ax-heading p{color:#46535f!important}
body>div#px-signature .s-categories{background:#fff!important;border-top:1px solid #e3eaf0;border-bottom:1px solid #e3eaf0}
body>div#px-signature .s-categories *{color:#46535f!important}
body>div#px-signature .launch-section-cta{border-radius:22px;overflow:hidden}

/* sub-pages: remaining copy on the bright shell */
body>div#px-signature .ax-outcomes b{color:#222831!important}
body>div#px-signature .ax-outcomes span{color:#5d6f7f!important}
body>div#px-signature :is(.p-detailgrid,.ai-hero,.ai-comparison)>div>p:not(.px-dark *){color:#46535f!important}

/* ================= headings: Geist (OFL, self-hosted) ================= */
@font-face{font-family:Geist;src:url(fonts/geist-sans-latin-600-normal.woff2) format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Geist;src:url(fonts/geist-sans-latin-700-normal.woff2) format('woff2');font-weight:700;font-display:swap}
main#top :is(h1,h2,h3),body>div#px-signature :is(h1,h2,h3),.px-not-grid strong,.px-start-steps strong,.px-sec-grid strong,.px-many-grid strong,.pxd-now,.proof-stats strong,.chain-benefit strong,.footer-cta h2{font-family:Geist,Hanken,"Helvetica Neue",Arial,sans-serif!important}
main#top :is(h1,h2),body>div#px-signature :is(h1,h2){letter-spacing:-.058em!important;line-height:1.03!important}
main#top h3,body>div#px-signature h3,.px-not-grid strong,.px-start-steps strong,.px-sec-grid strong,.px-many-grid strong{letter-spacing:-.025em!important}
.pxd-now,.proof-stats strong,.chain-benefit strong{letter-spacing:-.05em!important}
body>div#px-signature .ax-section:not(.px-dark) p>a{color:#2d388a!important}
main#top :is(h1,h2),body>div#px-signature :is(h1,h2){letter-spacing:-.045em!important}
body>div#px-signature :is(.s-top,.s-ready){background:transparent!important}
