html{scroll-behavior:smooth}body,html{overflow-x:hidden}.epRouteProgress{position:fixed;top:0;left:0;z-index:10020;height:3px;width:0;background:linear-gradient(90deg,#68b8ff,#8af0dc);opacity:0;pointer-events:none}.epRouteProgress.active{opacity:1;animation:epRouteLoad 1.1s ease-out both}@keyframes epRouteLoad{0%{width:0}65%{width:76%}to{width:92%}}.epRevealReady{opacity:0;transform:translateY(18px);transition:opacity .62s ease,transform .62s cubic-bezier(.2,.75,.2,1)}.epRevealReady.epRevealed{opacity:1;transform:none}.epContextCta{position:fixed;left:max(16px,env(safe-area-inset-left));bottom:max(18px,env(safe-area-inset-bottom));z-index:84;width:min(340px,calc(100vw - 32px));padding:15px 42px 15px 16px;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(13,16,22,.94);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 18px 55px rgba(0,0,0,.28);color:#fff}.epContextCta small{display:block;font-size:10px;letter-spacing:.14em;color:#c9aa6c}.epContextCta strong{display:block;margin:5px 0 9px;font-size:15px;line-height:1.35}.epContextCta a{color:#e6c980;font-size:13px;font-weight:800;text-decoration:none}.epContextClose{position:absolute;top:8px;right:9px;width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:#aeb5c0;font-size:20px;cursor:pointer}.epContextClose:focus-visible,.epContextClose:hover{background:rgba(255,255,255,.08);color:#fff}.epLoading{min-height:55vh;display:grid;place-items:center;align-content:center;grid-gap:8px;gap:8px;padding:48px 20px;text-align:center;color:#111}.epLoadingPulse{width:42px;height:42px;border-radius:50%;border:2px solid rgba(30,90,150,.16);border-top-color:#448bd0;animation:epSpin .8s linear infinite}.epLoading strong{margin-top:8px;font-size:18px}.epLoading small{color:#68717d}@keyframes epSpin{to{transform:rotate(1turn)}}.portfolioFilterBar{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0 auto 24px}.portfolioFilterBar button{min-height:42px;padding:9px 14px;border:1px solid rgba(32,59,91,.16);border-radius:999px;background:#fff;color:#304050;font:inherit;font-size:12px;font-weight:750;cursor:pointer}.portfolioFilterBar button.active{background:#101a27;color:#fff;border-color:#101a27;box-shadow:0 8px 24px rgba(16,26,39,.14)}.portfolioFilteredGrid{transition:min-height .2s ease}.portfolioFilterCount{text-align:center;margin:18px 0 0;color:#697584;font-size:12px}a,button,input,select,textarea{touch-action:manipulation}a,button{transition:transform .18s ease,opacity .18s ease,box-shadow .18s ease,border-color .18s ease}a:active,button:active{transform:translateY(1px)}:focus-visible{outline:3px solid rgba(105,183,255,.72);outline-offset:3px}canvas,iframe,img,svg,video{max-width:100%}@media(max-width:900px){.epContextCta{width:min(310px,calc(100vw - 28px));padding:13px 40px 13px 14px}.epContextCta strong{font-size:14px}}@media(max-width:640px){.epContextCta{left:10px;right:auto;bottom:max(10px,env(safe-area-inset-bottom));width:min(286px,calc(100vw - 20px));border-radius:15px}.epContextCta small{font-size:9px}.epContextCta strong{font-size:13px;margin:4px 0 7px}.epContextCta a{font-size:12px}.epLoading{min-height:48vh;padding:36px 16px}.portfolioFilterBar{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:none}.portfolioFilterBar::-webkit-scrollbar{display:none}.portfolioFilterBar button{flex:0 0 auto;min-height:44px}}@media(max-height:520px) and (orientation:landscape){.epContextCta{display:none}.epLoading{min-height:70vh}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.epRevealReady{opacity:1!important;transform:none!important;transition:none!important}.epRouteProgress{display:none}.epLoadingPulse{animation:none}a,button{transition:none}}.partnerNetwork{padding:78px 0 70px;background:radial-gradient(circle at 20% 0,rgba(55,102,180,.16),transparent 34%),linear-gradient(180deg,rgba(9,14,24,.99),rgba(15,24,38,.99));color:#fff;overflow:hidden}.partnerNetworkHead{width:min(1180px,calc(100% - 40px));margin:0 auto 34px}.partnerNetworkHead span{font-size:12px;letter-spacing:.22em;opacity:.7}.partnerNetworkHead h2{margin:10px 0 12px;font-size:clamp(30px,4vw,52px);line-height:1.04}.partnerNetworkHead p{max-width:860px;opacity:.73;line-height:1.7}.partnerMarquee{position:relative;overflow:hidden;margin-top:34px;padding:6px 0}.partnerMarquee:after,.partnerMarquee:before{content:"";position:absolute;top:0;bottom:0;width:90px;z-index:3;pointer-events:none}.partnerMarquee:before{left:0;background:linear-gradient(90deg,#0b1220,transparent)}.partnerMarquee:after{right:0;background:linear-gradient(-90deg,#0d1624,transparent)}.partnerTrack{display:flex;gap:18px;width:max-content;animation:partner-scroll 32s linear infinite}.partnerMarquee:hover .partnerTrack{animation-play-state:paused}.partnerChip{display:flex;align-items:center;gap:16px;min-width:330px;height:112px;padding:18px 22px;border:1px solid rgba(255,255,255,.13);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.035));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 16px 42px rgba(0,0,0,.22);transition:transform .25s,border-color .25s,background .25s}.partnerChip:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.09)}.partnerLogo{width:62px;height:62px;flex:0 0 62px;padding:6px;border-radius:18px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.12);color:#8dc4ff}.partnerCopy{display:flex;flex-direction:column;min-width:0}.partnerCopy strong{font-size:16px;line-height:1.15}.partnerCopy small{margin-top:6px;font-size:11px;opacity:.68;font-weight:500}.partnerCopy em{margin-top:8px;width:max-content;padding:4px 8px;border-radius:999px;background:rgba(141,196,255,.1);border:1px solid rgba(141,196,255,.18);font-size:9px;letter-spacing:.12em;text-transform:uppercase;font-style:normal;color:#b7dbff}@keyframes partner-scroll{0%{transform:translateX(0)}to{transform:translateX(calc(-50% - 9px))}}@media(max-width:700px){.partnerNetwork{padding:56px 0}.partnerNetworkHead{width:min(100% - 28px,1180px)}.partnerChip{min-width:275px;height:100px;padding:15px 17px}.partnerLogo{width:54px;height:54px;flex-basis:54px}.partnerCopy strong{font-size:14px}.partnerTrack{animation-duration:25s}.partnerMarquee:after,.partnerMarquee:before{width:35px}}@media(prefers-reduced-motion:reduce){.partnerTrack{animation:none;flex-wrap:wrap;width:auto;padding:0 14px;justify-content:center}}.cmsBlogIndex .insightGrid .insightCard{overflow:hidden;position:relative;padding-top:190px;background:#fff}.cmsBlogIndex .insightGrid .insightCard:before{content:"";position:absolute;inset:0 0 auto 0;height:170px;background-size:cover;background-position:50%;border-bottom:1px solid #e4ebf4}.cmsBlogIndex .insightGrid .insightCard:first-child:before{background-image:url(/blog-covers/ai-procurement-software-2026)}.cmsBlogIndex .insightGrid .insightCard:nth-child(2):before{background-image:url(/blog-covers/purchase-approval-workflow-automation)}.cmsBlogIndex .insightGrid .insightCard:nth-child(3):before{background-image:url(/blog-covers/procurement-software-vs-erp)}.cmsBlogIndex .insightGrid .insightCard:hover:before{filter:brightness(1.05)}@media(max-width:700px){.cmsBlogIndex .insightGrid .insightCard{padding-top:160px}.cmsBlogIndex .insightGrid .insightCard:before{height:142px}}