:root{--ink:#0a1020;--ink-2:#151d30;--paper:#f7f8fb;--white:#fff;--muted:#687086;--line:#dfe3ea;--blue:#315cff;--blue-2:#1f46dc;--soft:#e9eeff;--max:1240px;--radius:6px;--shadow:0 18px 60px rgba(10,16,32,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:var(--white);padding:.75rem 1rem;border:2px solid var(--blue)}.skip-link:focus{top:1rem}.site-header{height:88px;padding:0 max(24px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:32px;background:rgba(247,248,251,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(16px);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:12px;font-size:.73rem;line-height:1.05;font-weight:800}.brand-name{display:grid;width:72px;gap:2px;letter-spacing:0}.brand-word{display:flex;align-items:center;justify-content:space-between;white-space:nowrap}.brand-word b{font:inherit;font-weight:800}.brand-mark{width:35px;height:35px;display:grid;grid-template-columns:1fr 1fr;gap:3px}.brand-mark i{display:block;background:var(--ink);border-radius:1px}.brand-mark i:first-child{background:var(--blue)}.brand-mark i:last-child{grid-column:1/3;width:72%;justify-self:end}.primary-nav{display:flex;align-items:center;justify-content:center;gap:27px}.primary-nav a{font-size:.85rem;font-weight:650;color:#465067;white-space:nowrap}.primary-nav a:hover,.primary-nav a.active{color:var(--blue)}.nav-products{position:relative}.nav-products>button{border:0;background:none;padding:12px 0;color:#465067;font-size:.85rem;font-weight:650;cursor:pointer}.nav-products>button::after{content:"+";margin-left:5px;color:var(--blue)}.nav-menu{display:none;position:absolute;left:-20px;top:40px;min-width:210px;background:var(--white);box-shadow:var(--shadow);border:1px solid var(--line);padding:10px}.nav-products:hover .nav-menu,.nav-products:focus-within .nav-menu{display:grid}.nav-menu a{padding:9px 10px;border-radius:4px}.nav-menu a:hover{background:var(--soft)}.header-actions{display:flex;align-items:center;gap:14px}.language-toggle{display:flex;border:1px solid var(--line);background:var(--white);padding:3px;border-radius:99px;cursor:pointer}.language-toggle span{font-size:.72rem;font-weight:750;padding:5px 7px;border-radius:99px;color:var(--muted)}.language-toggle .active{background:var(--ink);color:var(--white)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;background:var(--blue);color:#fff;font-weight:750;padding:0 22px;border-radius:4px;border:1px solid var(--blue);transition:.2s ease}.button:hover{background:var(--blue-2);transform:translateY(-1px)}.button-small{min-height:40px;padding:0 17px;font-size:.84rem}.button-ghost{background:transparent;color:var(--ink);border-color:var(--line)}.button-ghost:hover{background:var(--white);color:var(--blue)}.menu-button{display:none;border:0;background:transparent;padding:10px}.menu-button span{display:block;width:24px;height:2px;background:var(--ink);margin:6px}
.hero{min-height:calc(100vh - 88px);display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);align-items:center;gap:8vw;max-width:var(--max);margin:auto;padding:92px 24px}.eyebrow{display:flex;align-items:center;gap:10px;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:24px}.eyebrow::before{content:"";width:26px;height:2px;background:var(--blue)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3rem,6vw,6.35rem);line-height:.94;letter-spacing:-.065em;margin-bottom:30px;max-width:820px}h2{font-size:clamp(2.2rem,4.4vw,4.4rem);line-height:1;letter-spacing:-.05em;margin-bottom:24px}h3{font-size:1.23rem;line-height:1.2;letter-spacing:-.018em}.lead{font-size:clamp(1.08rem,1.5vw,1.28rem);color:#4c566d;max-width:650px;line-height:1.55}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}.microcopy{margin-top:18px;font-size:.82rem;color:var(--muted)}.module-map{aspect-ratio:1/1;display:grid;grid-template:repeat(6,1fr)/repeat(6,1fr);gap:10px;position:relative}.module{padding:24px;border-radius:var(--radius);display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow);transition:.35s ease}.module:hover{transform:translateY(-5px)}.module strong{font-size:clamp(1.5rem,3vw,2.4rem);letter-spacing:-.04em}.module span{font-size:.76rem;text-transform:uppercase;letter-spacing:.1em}.module-pms{grid-area:1/1/4/5;background:var(--ink);color:white}.module-crm{grid-area:4/2/7/5;background:var(--blue);color:white}.module-gds{grid-area:2/5/6/7;background:white}.module-base{grid-area:6/5/7/7;background:var(--ink-2);color:white;padding:14px}.module-base strong{font-size:.84rem;letter-spacing:0}.section{padding:116px 24px}.section-inner{max-width:var(--max);margin:auto}.section-head{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:64px}.section-head p{color:var(--muted);max-width:560px}.dark{background:var(--ink);color:var(--white)}.dark .lead,.dark .section-head p{color:#aeb7cb}.dark .eyebrow{color:#7f9aff}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ccd1dc;border:1px solid #ccd1dc}.product-card{background:var(--paper);padding:38px;min-height:370px;display:flex;flex-direction:column}.product-card .index{font-size:.72rem;color:var(--blue);font-weight:800;letter-spacing:.12em}.product-card h3{font-size:2rem;letter-spacing:-.04em;margin:45px 0 18px}.product-card p{color:var(--muted)}.product-card a{margin-top:auto;font-size:.88rem;font-weight:800;color:var(--blue)}.product-card a::after{content:" →"}.band{background:var(--blue);color:#fff;padding:34px 24px}.band-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.4fr repeat(3,.6fr);gap:28px;align-items:center}.band strong{font-size:1.25rem}.band span{font-size:.8rem;opacity:.8;text-transform:uppercase;letter-spacing:.08em}.band b{display:block;font-size:1rem;margin-top:4px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.step{border-top:1px solid #3c455b;padding-top:24px}.step em{font-style:normal;color:#7892ff;font-weight:800;font-size:.76rem}.step h3{font-size:1.55rem;margin:42px 0 14px}.step p{color:#aeb7cb}.cta-panel{max-width:var(--max);margin:auto;background:var(--white);border:1px solid var(--line);padding:64px;display:grid;grid-template-columns:1.5fr .5fr;gap:48px;align-items:center}.cta-panel p{color:var(--muted);max-width:660px}.cta-panel .button{justify-self:end}.page-hero{padding:112px 24px 74px;background:var(--ink);color:#fff}.page-hero-inner{max-width:var(--max);margin:auto}.page-hero h1{font-size:clamp(3.2rem,7vw,6.8rem);max-width:980px}.page-hero .lead{color:#b7bfd0}.page-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:40px}.pill{border:1px solid #3c455b;padding:8px 12px;font-size:.76rem;letter-spacing:.06em;text-transform:uppercase;color:#cbd2e0}.split{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw}.split>aside{position:sticky;top:125px;align-self:start}.split>aside p{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;color:var(--blue);font-weight:800}.content-block{padding:0 0 64px;margin-bottom:64px;border-bottom:1px solid var(--line)}.content-block:last-child{border-bottom:0}.content-block h2{font-size:clamp(2rem,3.4vw,3.5rem)}.content-block>p{font-size:1.08rem;color:#4b556d;max-width:760px}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:0 32px;margin-top:34px;padding:0;list-style:none;border-top:1px solid var(--line)}.feature-list li{padding:18px 0;border-bottom:1px solid var(--line);font-weight:650}.feature-list li::before{content:"■";font-size:.54rem;color:var(--blue);margin-right:12px}.ecosystem-visual{display:grid;grid-template-columns:1fr 80px 1fr 80px 1fr;align-items:center;margin:54px 0}.eco-box{min-height:220px;padding:28px;background:var(--white);border:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}.eco-box:nth-of-type(3){background:var(--blue);color:#fff;border-color:var(--blue)}.connector{height:2px;background:var(--blue);position:relative}.connector::after{content:"";position:absolute;right:0;top:-4px;width:8px;height:8px;border-top:2px solid var(--blue);border-right:2px solid var(--blue);transform:rotate(45deg)}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.price-card{background:#fff;border:1px solid var(--line);padding:34px;display:flex;flex-direction:column;min-height:470px}.price-card.featured{border:2px solid var(--blue);position:relative}.price-card.featured::before{content:attr(data-label);position:absolute;right:18px;top:18px;background:var(--soft);color:var(--blue);padding:5px 8px;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.price-card h3{font-size:2rem;margin-top:32px}.price-card .price{font-size:1rem;color:var(--muted);margin:10px 0 30px}.price-card ul{padding:0;list-style:none}.price-card li{padding:11px 0;border-bottom:1px solid var(--line);font-size:.9rem}.price-card .button{margin-top:auto}.notice{background:var(--soft);border-left:4px solid var(--blue);padding:24px 28px;margin-top:32px}.notice strong{display:block;margin-bottom:8px}.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:10vw}.contact-details{display:grid;gap:18px;margin-top:42px}.contact-detail{padding:20px 0;border-top:1px solid var(--line)}.contact-detail span{display:block;font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px}.contact-detail a{font-size:1.1rem;font-weight:750;color:var(--blue)}.contact-form{background:#fff;padding:42px;border:1px solid var(--line)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:grid;gap:7px;margin-bottom:18px}.field label{font-size:.8rem;font-weight:750}.field input,.field textarea{width:100%;border:1px solid #cbd1dd;background:#fff;padding:13px 14px;border-radius:3px;color:var(--ink)}.field textarea{min-height:140px;resize:vertical}.field input:focus,.field textarea:focus{outline:3px solid rgba(49,92,255,.18);border-color:var(--blue)}.legal-layout{display:grid;grid-template-columns:270px minmax(0,780px);gap:80px;align-items:start}.legal-nav{position:sticky;top:120px;display:grid;border-left:1px solid var(--line)}.legal-nav a{padding:10px 18px;font-size:.86rem;color:var(--muted)}.legal-nav a.active{border-left:2px solid var(--blue);color:var(--blue);font-weight:750}.legal-doc h2{font-size:2rem;margin-top:50px}.legal-doc h3{margin-top:34px}.legal-doc p,.legal-doc li{color:#505a70}.legal-doc li{margin-bottom:9px}.legal-doc .updated{font-size:.82rem;color:var(--muted);margin-bottom:36px}.site-footer{background:#080d19;color:#fff;padding:70px max(24px,calc((100vw - var(--max))/2)) 28px}.footer-main{display:grid;grid-template-columns:1.25fr .75fr .75fr .9fr;gap:60px;padding-bottom:56px}.footer-brand p{font-size:.88rem;color:#9ba5bb;max-width:300px;margin-top:22px}.footer-col h3{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#748099;margin-bottom:20px}.footer-col a{display:block;color:#cbd2df;font-size:.88rem;margin:10px 0}.footer-col a:hover{color:#8ba0ff}.footer-bottom{border-top:1px solid #252c3b;padding-top:24px;display:flex;justify-content:space-between;gap:24px;color:#727c91;font-size:.76rem}.footer-bottom a{color:#aeb8cc}
@view-transition{navigation:auto}
::view-transition-old(root){animation:page-out .18s cubic-bezier(.4,0,1,1) both}
::view-transition-new(root){animation:page-in .48s cubic-bezier(.16,1,.3,1) both}
::view-transition-old(site-header),::view-transition-new(site-header){animation:none}
@keyframes page-out{to{opacity:0;transform:translateY(-8px)}}
@keyframes page-in{from{opacity:0;transform:translateY(14px)}}
.site-header{view-transition-name:site-header}
.hero{min-height:76vh;padding-top:68px;padding-bottom:72px}
.section{padding-top:86px;padding-bottom:86px}
.section-head{margin-bottom:44px}
.product-card{min-height:330px}
.page-hero{padding-top:82px;padding-bottom:56px}
.content-block{padding-bottom:42px;margin-bottom:42px}
.cta-panel{padding:48px 54px}
.site-footer{padding-top:56px}
.split{display:block}
.split>aside{position:static;display:flex;align-items:center;gap:18px;width:100%;margin-bottom:34px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.split>aside::after{content:"";height:2px;flex:1;background:var(--blue);opacity:.18}
.split>aside p{margin:0;white-space:nowrap}
.content-block{display:grid;grid-template-columns:minmax(260px,.82fr) minmax(0,1.18fr);gap:clamp(36px,7vw,104px);align-items:start}
.content-block h2{margin:0;font-size:clamp(1.85rem,3vw,3.15rem)}
.content-block>p,.content-block>.feature-list{grid-column:2;margin-top:0;max-width:none}
.content-block>.feature-list{width:100%}
.custom-dev-card{margin-top:24px;padding:34px 38px;background:var(--ink);color:#fff;display:grid;grid-template-columns:1.05fr .95fr;gap:7vw;align-items:center;border-radius:var(--radius);overflow:hidden;position:relative}
.custom-dev-card::after{content:"";position:absolute;width:150px;height:150px;right:-60px;bottom:-75px;border:1px solid #4268ff;transform:rotate(18deg)}
.custom-dev-card span{display:block;color:#8ea4ff;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px}
.custom-dev-card h3{font-size:clamp(1.45rem,2.5vw,2.25rem);margin:0;max-width:590px}
.custom-dev-card p{color:#b5bed0;margin-bottom:14px}.custom-dev-card a{color:#fff;font-weight:800;font-size:.88rem}
.module-base{position:relative;overflow:hidden;justify-content:center;padding-left:18px}
.module-base::after{content:"↗";position:absolute;right:16px;top:50%;color:#7892ff;font-size:1rem;transform:translateY(-50%);transition:transform .32s cubic-bezier(.16,1,.3,1)}
.module-base:hover::after{transform:translate(3px,-4px)}
.module-base strong{max-width:calc(100% - 24px);font-size:.75rem;letter-spacing:.08em}
.pricing-section{padding-top:72px}
.price-grid{gap:18px;align-items:stretch}
.price-card{--card-accent:var(--blue);position:relative;overflow:hidden;min-height:0;padding:30px;border-radius:8px;box-shadow:0 8px 30px rgba(10,16,32,.035);transition:border-color .32s cubic-bezier(.16,1,.3,1),box-shadow .32s cubic-bezier(.16,1,.3,1),transform .32s cubic-bezier(.16,1,.3,1)}
.price-card::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--card-accent);transform:scaleX(.2);transform-origin:left;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.price-card-crm{--card-accent:#5576ff}
.price-card-gds{--card-accent:#7892ff}
.price-card:hover{border-color:#bec9f2;box-shadow:0 22px 48px rgba(10,16,32,.09);transform:translateY(-7px)}
.price-card:hover::before{transform:scaleX(1)}
.price-card-top{display:flex;align-items:flex-start;justify-content:space-between;min-height:40px}
.price-card-top .eyebrow{margin:0}
.price-number{font-size:.68rem;font-weight:800;letter-spacing:.12em;color:#9ba4b8}
.price-card-copy{padding:23px 0 26px}
.price-context{margin:0 0 10px;color:var(--blue);font-size:.72rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.price-card h3{font-size:clamp(1.7rem,2.25vw,2.35rem);margin:0;min-height:2.4em}
.price-card .price{display:inline-flex;align-items:center;width:max-content;margin:24px 0 0;padding:7px 11px;border-radius:99px;background:var(--soft);color:#4d5f9d;font-size:.78rem;font-weight:750}
.price-card ul{margin:0 0 28px;border-top:1px solid var(--line)}
.price-card li{position:relative;padding:13px 4px 13px 20px;font-size:.86rem;color:#394257}
.price-card li::before{content:"";position:absolute;left:2px;top:20px;width:6px;height:6px;border-radius:50%;background:var(--card-accent)}
.price-card .price-action{margin-top:auto;justify-content:space-between;background:var(--ink);border-color:var(--ink);color:#fff}
.price-card .price-action span:last-child{font-size:1rem;transition:transform .32s cubic-bezier(.16,1,.3,1)}
.price-card:hover .price-action{background:var(--blue);border-color:var(--blue)}
.price-card:hover .price-action span:last-child{transform:translate(3px,-3px)}
.pricing-notice{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:36px;align-items:start;border-radius:0 8px 8px 0;padding:26px 30px}
.pricing-notice strong{margin:0}.pricing-notice span{color:#4c566d}
body[data-product="pms"]{--route-accent:#315cff;--route-accent-soft:#e9eeff}
body[data-product="crm"]{--route-accent:#5576ff;--route-accent-soft:#edf0ff}
body[data-product="gds"]{--route-accent:#8075f2;--route-accent-soft:#f0efff}
.site-header{transition:height .32s cubic-bezier(.16,1,.3,1),background-color .32s ease,box-shadow .32s ease}
.site-header .brand-mark{display:block;flex:0 0 auto;overflow:visible;background:url("/assets/logo-modular-v2.png") center/contain no-repeat;filter:drop-shadow(0 0 .35px rgba(8,15,31,.48));transition:width .32s cubic-bezier(.16,1,.3,1),height .32s cubic-bezier(.16,1,.3,1)}
.site-header .brand-mark i{display:none}
.site-header.is-compact{height:70px;background:rgba(247,248,251,.98);box-shadow:0 10px 34px rgba(10,16,32,.075)}
.site-header.is-compact .brand-mark{width:30px;height:30px}
.primary-nav>a{position:relative}
.primary-nav>a::after{content:"";position:absolute;left:0;right:0;bottom:-13px;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .32s cubic-bezier(.16,1,.3,1)}
.primary-nav>a:hover::after,.primary-nav>a.active::after{transform:scaleX(1)}
.nav-products>button{position:relative;transition:color .3s ease}
body[data-product] .nav-products>button{color:var(--route-accent);font-weight:750}
.nav-products{z-index:2}
.nav-products>button::after{display:inline-block;transition:transform .28s cubic-bezier(.16,1,.3,1)}
.nav-products.is-open>button::after{transform:rotate(45deg)}
.nav-menu{display:grid;top:100%;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transform-origin:top;transition:opacity .25s ease,transform .32s cubic-bezier(.16,1,.3,1),visibility .25s}
.nav-products:hover .nav-menu,.nav-products:focus-within .nav-menu,.nav-products.is-open .nav-menu{display:grid;opacity:1;visibility:visible;pointer-events:auto;transform:none}
.product-overview-section{position:relative;background:#f0f3f9;overflow:hidden}
.product-overview-section::before{content:"";position:absolute;left:max(24px,calc((100vw - var(--max))/2));top:0;bottom:0;width:1px;background:#dce2ee}
.product-overview-section .section-inner{position:relative}
.product-overview-section .section-head{padding-left:24px}
.grid-3{gap:14px;background:transparent;border:0}
.product-card{--product-accent:var(--blue);position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 26px rgba(10,16,32,.035)}
.product-card-crm{--product-accent:#5576ff}.product-card-gds{--product-accent:#8075f2}
.product-card::before{content:"";position:absolute;left:0;top:0;width:4px;height:58px;background:var(--product-accent);transition:height .42s cubic-bezier(.16,1,.3,1)}
.product-card::after{content:"";position:absolute;right:-42px;top:-42px;width:112px;height:112px;border:1px solid color-mix(in srgb,var(--product-accent) 28%,transparent);border-radius:50%;transition:transform .5s cubic-bezier(.16,1,.3,1)}
.product-card:hover{transform:translateY(-6px);border-color:#c4cceb;box-shadow:0 22px 45px rgba(10,16,32,.09)}
.product-card:hover::before{height:100%}.product-card:hover::after{transform:scale(1.18)}
.product-card .index{color:var(--product-accent)}
.product-card-mark{display:flex;gap:4px;align-items:flex-end;height:18px;margin-top:28px}
.product-card-mark i{display:block;width:7px;background:var(--product-accent);opacity:.2;transition:height .35s cubic-bezier(.16,1,.3,1),opacity .35s ease}
.product-card-mark i:nth-child(1){height:8px}.product-card-mark i:nth-child(2){height:13px}.product-card-mark i:nth-child(3){height:18px}
.product-card:hover .product-card-mark i{opacity:1}.product-card:hover .product-card-mark i:nth-child(1){height:16px}.product-card:hover .product-card-mark i:nth-child(3){height:10px}
.product-card h3{margin-top:28px}.product-card a{color:var(--product-accent);width:max-content}.product-card a::after{display:inline-block;transition:transform .3s cubic-bezier(.16,1,.3,1)}.product-card:hover a::after{transform:translateX(5px)}
.custom-dev-card{margin-top:28px;padding:42px;background:#080f1f;display:block;border-radius:10px;border:1px solid #202b42;box-shadow:0 24px 60px rgba(10,16,32,.16)}
.custom-dev-card::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--blue)}
.custom-dev-card::after{width:260px;height:260px;right:-95px;bottom:-150px;border-color:#3b5fdc;border-radius:50%;transform:none}
.custom-dev-head{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:7vw;align-items:end;margin-bottom:34px}
.custom-dev-card .custom-dev-label{display:block;color:#8ea4ff;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin:0 0 16px}
.custom-dev-head h3{font-size:clamp(1.7rem,3vw,2.6rem)}
.custom-dev-head>p{margin:0;color:#b5bed0;max-width:490px}
.custom-dev-paths{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #2a3449;border-bottom:1px solid #2a3449}
.custom-dev-path{min-width:0;padding:25px 28px 26px;min-height:176px;transition:background-color .32s ease,padding .32s cubic-bezier(.16,1,.3,1)}
.custom-dev-path+article{border-left:1px solid #2a3449}
.custom-dev-card .custom-dev-path span{margin:0 0 30px;color:#7892ff;font-size:.7rem;letter-spacing:.12em}
.custom-dev-path strong{display:block;font-size:1.22rem;margin-bottom:9px}.custom-dev-path p{margin:0;color:#98a4ba;font-size:.88rem}
.custom-dev-path:hover{background:#101a2d}.custom-dev-link{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;margin-top:26px;color:#fff;font-weight:800;font-size:.88rem}.custom-dev-link b{font-size:1rem;transition:transform .3s cubic-bezier(.16,1,.3,1)}.custom-dev-link:hover b{transform:translate(4px,-4px)}
.architecture-band{position:relative;overflow:hidden;background:#294fdf;border-top:1px solid #6e8cff;border-bottom:1px solid #1b3ebd}
.architecture-band::after{content:"";position:absolute;right:7vw;top:-80px;width:220px;height:220px;border:1px solid rgba(255,255,255,.18);transform:rotate(45deg)}
.architecture-band .band-inner{position:relative;z-index:1}.architecture-band .band-inner>div{padding-left:20px;border-left:1px solid rgba(255,255,255,.28)}
.process-section{position:relative;overflow:hidden}
.process-section::after{content:"";position:absolute;right:-140px;bottom:-240px;width:520px;height:520px;border:1px solid #26314a;border-radius:50%}
.process-section .section-inner{position:relative;z-index:1}
.step{position:relative;overflow:hidden;padding-right:18px}
.step::after{content:"";position:absolute;left:0;top:0;width:100%;height:2px;background:#7892ff;transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.step:hover::after{transform:scaleX(1)}.step h3{transition:transform .32s cubic-bezier(.16,1,.3,1)}.step:hover h3{transform:translateY(-5px)}
.page-hero{position:relative;overflow:hidden}
.page-hero::after{content:"";position:absolute;right:clamp(24px,8vw,130px);top:-45px;width:210px;height:210px;border:1px solid #26314a;transform:rotate(18deg)}
.page-hero-inner{position:relative;z-index:1}
.product-hero::before{content:"";position:absolute;right:0;bottom:0;width:34%;height:4px;background:var(--route-accent)}
.product-hero .eyebrow{color:color-mix(in srgb,var(--route-accent) 72%,white)}
.product-detail-section{background:var(--route-accent-soft);position:relative}
.product-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:color-mix(in srgb,var(--route-accent) 24%,#dfe3ea);border:1px solid color-mix(in srgb,var(--route-accent) 24%,#dfe3ea);margin-bottom:72px;border-radius:8px;overflow:hidden;box-shadow:0 18px 45px rgba(10,16,32,.055)}
.product-flow article{position:relative;overflow:hidden;min-height:220px;padding:30px;background:#fff;transition:background-color .32s ease}
.product-flow article::after{content:attr(data-step);position:absolute;right:-8px;bottom:-42px;font-size:8rem;line-height:1;font-weight:800;color:var(--route-accent-soft);letter-spacing:-.08em}
.product-flow article:hover{background:color-mix(in srgb,var(--route-accent-soft) 48%,white)}
.product-flow span,.service-modes span{display:block;color:var(--route-accent,var(--blue));font-size:.7rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;margin-bottom:48px}
.product-flow p{position:relative;z-index:1;margin:0;font-size:1rem;line-height:1.55;color:#3f4960}
.product-detail-copy>aside::after{background:var(--route-accent)}.product-detail-copy>aside p{color:var(--route-accent)}
.product-detail-copy .feature-list li::before{color:var(--route-accent)}
.services-section{background:#f0f3f9}
.service-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:76px}
.service-modes article{position:relative;overflow:hidden;min-height:210px;padding:30px;background:#fff;border:1px solid var(--line);border-radius:8px;transition:transform .32s cubic-bezier(.16,1,.3,1),box-shadow .32s ease,border-color .32s ease}
.service-modes article::after{content:"↗";position:absolute;right:25px;top:25px;color:#9aa6be;transition:transform .32s cubic-bezier(.16,1,.3,1),color .32s ease}
.service-modes article:hover{transform:translateY(-6px);border-color:#bec8ef;box-shadow:0 20px 42px rgba(10,16,32,.08)}.service-modes article:hover::after{transform:translate(3px,-3px);color:var(--blue)}
.service-modes span{--route-accent:var(--blue);margin-bottom:38px}.service-modes h3{font-size:1.55rem;margin-bottom:12px}.service-modes p{color:var(--muted);margin:0}
.ecosystem-hero::before,.services-hero::before,.about-hero::before,.pricing-hero::before{content:"";position:absolute;left:0;bottom:0;height:4px;background:var(--blue)}
.ecosystem-hero::before{width:25%}.services-hero::before{width:50%;background:#5576ff}.about-hero::before{width:75%;background:#8075f2}.pricing-hero::before{width:100%}
.ecosystem-section{position:relative;background:#eef2f8;overflow:hidden}
.ecosystem-section::before{content:"";position:absolute;left:-160px;top:210px;width:320px;height:320px;border:1px solid #d8dfec;border-radius:50%}
.ecosystem-section .section-inner{position:relative;z-index:1}
.ecosystem-section .ecosystem-visual{margin:0 0 72px}
.ecosystem-section .eco-box{--eco-accent:var(--blue);position:relative;overflow:hidden;min-height:250px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:9px;box-shadow:0 14px 34px rgba(10,16,32,.055);transition:transform .36s cubic-bezier(.16,1,.3,1),box-shadow .36s ease,border-color .36s ease}
.ecosystem-section .eco-box:nth-of-type(3){background:#fff;color:var(--ink);border-color:var(--line)}
.ecosystem-section .eco-crm{--eco-accent:#5576ff}.ecosystem-section .eco-gds{--eco-accent:#8075f2}
.ecosystem-section .eco-box::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--eco-accent);transform:scaleX(.28);transform-origin:left;transition:transform .4s cubic-bezier(.16,1,.3,1)}
.ecosystem-section .eco-box::after{content:"";position:absolute;right:-35px;top:-35px;width:105px;height:105px;border:1px solid color-mix(in srgb,var(--eco-accent) 25%,transparent);border-radius:50%}
.ecosystem-section .eco-box:hover{transform:translateY(-7px);border-color:#c3cae7;box-shadow:0 24px 48px rgba(10,16,32,.1)}.ecosystem-section .eco-box:hover::before{transform:scaleX(1)}
.ecosystem-section .eco-box h3{font-size:2.7rem;margin:28px 0 12px}.ecosystem-section .eco-box span{color:var(--eco-accent);font-size:.7rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.ecosystem-section .connector{background:color-mix(in srgb,var(--blue) 55%,#dfe3ea)}
.ecosystem-section .architecture-card,.services-section .service-capability,.about-section .story-card{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:8px;padding:30px 34px;margin-bottom:14px;box-shadow:0 10px 28px rgba(10,16,32,.035);transition:transform .32s cubic-bezier(.16,1,.3,1),box-shadow .32s ease,border-color .32s ease}
.ecosystem-section .architecture-card::before,.services-section .service-capability::before,.about-section .story-card::before{content:attr(data-index);position:absolute;right:24px;top:18px;color:#aab3c6;font-size:.68rem;font-weight:800;letter-spacing:.12em}
.ecosystem-section .architecture-card:hover,.services-section .service-capability:hover,.about-section .story-card:hover{transform:translateX(7px);border-color:#c1caed;box-shadow:0 18px 38px rgba(10,16,32,.075)}
.ecosystem-section .architecture-card h2,.services-section .service-capability h2,.about-section .story-card h2{font-size:clamp(1.65rem,2.6vw,2.65rem);padding-right:46px}
.ecosystem-section .architecture-card:last-child,.services-section .service-capability:last-child,.about-section .story-card:last-child{border-bottom:1px solid var(--line)}
.services-section .service-capabilities{margin-top:12px}
.services-section .service-capability::after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--blue);transform:scaleY(.24);transform-origin:top;transition:transform .38s cubic-bezier(.16,1,.3,1)}
.services-section .service-capability:hover::after{transform:scaleY(1)}
.services-section .notice{border-radius:0 8px 8px 0;margin-top:20px}
.about-section{position:relative;background:#f0f3f9;overflow:hidden}
.about-section::after{content:"";position:absolute;right:-120px;top:90px;width:310px;height:310px;border:1px solid #d9dfee;transform:rotate(18deg)}
.about-section .section-inner{position:relative;z-index:1}
.company-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:76px}
.company-fact{--fact-accent:var(--blue);position:relative;overflow:hidden;min-height:160px;padding:28px;background:#fff;border:1px solid var(--line);border-radius:8px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 12px 30px rgba(10,16,32,.04)}
.company-fact:nth-child(2){--fact-accent:#5576ff}.company-fact:nth-child(3){--fact-accent:#8075f2}
.company-fact::before{content:"";position:absolute;left:0;top:0;width:48px;height:3px;background:var(--fact-accent);transition:width .4s cubic-bezier(.16,1,.3,1)}.company-fact:hover::before{width:100%}
.company-fact span{color:var(--fact-accent);font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.company-fact strong{font-size:1.25rem;max-width:260px}
.about-section .story-card::after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#8075f2;transform:scaleY(.22);transform-origin:top;transition:transform .38s cubic-bezier(.16,1,.3,1)}.about-section .story-card:hover::after{transform:scaleY(1)}
.pricing-section{position:relative;background:#f0f3f9}
.pricing-rail{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:24px;background:var(--ink);color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 16px 38px rgba(10,16,32,.11)}
.pricing-rail>div{display:flex;align-items:center;gap:16px;padding:21px 25px;border-right:1px solid #2c3548}.pricing-rail>div:last-child{border-right:0}.pricing-rail span{color:#7892ff;font-size:.7rem;font-weight:800;letter-spacing:.1em}.pricing-rail strong{font-size:.9rem}
.pricing-section .price-card{box-shadow:0 12px 34px rgba(10,16,32,.05)}
.pricing-section .pricing-notice{background:#e4eaff;border-left-width:3px}
.billing-process{margin-top:78px;padding:46px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 18px 46px rgba(10,16,32,.055)}
.billing-process-head{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:end;margin-bottom:38px}
.billing-process-head>div>span,.refund-callout>div>span{display:block;color:var(--blue);font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px}
.billing-process-head h2,.refund-callout h2{font-size:clamp(2rem,3.5vw,3.45rem);margin-bottom:0}
.billing-process-head>p{color:var(--muted);margin:0;line-height:1.6}
.billing-steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.billing-step{position:relative;min-width:0;padding:28px 24px 30px;transition:background-color .3s ease}
.billing-step+.billing-step{border-left:1px solid var(--line)}
.billing-step:hover{background:#f5f7fc}
.billing-step>span{display:block;color:var(--blue);font-size:.7rem;font-weight:800;letter-spacing:.12em;margin-bottom:34px}
.billing-step h3{font-size:1.12rem;margin-bottom:11px}
.billing-step p{font-size:.86rem;line-height:1.55;color:var(--muted);margin:0}
.refund-callout{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:54px;align-items:center;margin-top:22px;padding:34px 38px;background:var(--ink);color:#fff;border:1px solid #28344c;border-radius:10px;box-shadow:0 18px 46px rgba(10,16,32,.12);transition:transform .32s cubic-bezier(.16,1,.3,1),box-shadow .32s ease}
.refund-callout::after{content:"";position:absolute;right:-78px;bottom:-125px;width:220px;height:220px;border:1px solid #334365;border-radius:50%}
.refund-callout>div,.refund-callout>strong{position:relative;z-index:1}
.refund-callout h2{font-size:clamp(1.7rem,2.9vw,2.8rem);margin-bottom:13px}
.refund-callout p{max-width:800px;margin:0;color:#aeb8cc;line-height:1.58}
.refund-callout>strong{display:flex;align-items:center;gap:18px;white-space:nowrap;color:#fff;font-size:.88rem}
.refund-callout>strong span{color:#8da1ff;transition:transform .3s cubic-bezier(.16,1,.3,1)}
.refund-callout:hover{transform:translateY(-4px);box-shadow:0 24px 54px rgba(10,16,32,.18)}
.refund-callout:hover>strong span{transform:translate(4px,-4px)}
.cta-section{background:#eef1f7;padding-top:70px;padding-bottom:70px}
.cta-panel{position:relative;overflow:hidden;border-radius:10px;box-shadow:0 18px 48px rgba(10,16,32,.07)}
.cta-panel::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--route-accent,var(--blue))}
.cta-panel .button{gap:28px}.cta-panel .button span{transition:transform .3s cubic-bezier(.16,1,.3,1)}.cta-panel .button:hover span{transform:translate(4px,-4px)}
body.motion-ready .reveal-section{opacity:0;transform:translateY(18px);transition:opacity .68s cubic-bezier(.16,1,.3,1),transform .68s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay,0ms);will-change:opacity,transform}
body.motion-ready .reveal-section.is-visible{opacity:1;transform:none}
body.page-leaving main,body.page-leaving .site-footer{opacity:0;transform:translateY(-8px);transition:opacity .17s ease,transform .17s ease}
.module,.product-card,.price-card,.eco-box,.button,.primary-nav a{transition-duration:.32s;transition-timing-function:cubic-bezier(.16,1,.3,1)}
@media(max-width:1050px){.site-header{grid-template-columns:1fr auto auto}.primary-nav{display:none;position:absolute;top:87px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:24px;align-items:flex-start;flex-direction:column;gap:13px}.primary-nav.open{display:flex}.nav-products{width:100%}.nav-menu{display:grid;position:static;box-shadow:none;border:0;background:transparent;padding:6px 12px}.menu-button{display:block;grid-column:2}.header-actions{grid-column:3}.hero{grid-template-columns:1fr .75fr;gap:48px}.footer-main{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.site-header{height:72px;padding:0 18px;gap:8px}.brand{font-size:.66rem}.brand-name{width:66px}.brand-mark{width:30px;height:30px}.primary-nav{top:71px}.header-actions .button{display:none}.hero{min-height:auto;grid-template-columns:1fr;padding:64px 20px 76px}.hero h1{font-size:3.55rem}.module-map{max-width:520px;width:100%;margin:20px auto 0;gap:7px}.module{padding:18px}.section{padding:78px 20px}.section-head,.split,.contact-grid{grid-template-columns:1fr;gap:28px}.grid-3,.steps,.price-grid{grid-template-columns:1fr}.product-card{min-height:300px}.band-inner{grid-template-columns:1fr 1fr}.band-inner strong{grid-column:1/-1}.cta-panel{margin:0 20px;padding:38px 28px;grid-template-columns:1fr}.cta-panel .button{justify-self:start}.page-hero{padding:80px 20px 55px}.split>aside{position:static}.feature-list{grid-template-columns:1fr}.ecosystem-visual{grid-template-columns:1fr;margin:34px 0}.connector{height:50px;width:2px;margin:auto}.connector::after{right:-4px;top:auto;bottom:0;transform:rotate(135deg)}.form-row{grid-template-columns:1fr}.contact-form{padding:28px 22px}.legal-layout{grid-template-columns:1fr;gap:36px}.legal-nav{position:static;grid-template-columns:repeat(3,1fr);border-left:0;border-bottom:1px solid var(--line);overflow:auto}.legal-nav a{padding:10px;font-size:.76rem;text-align:center}.footer-main{grid-template-columns:1fr 1fr;gap:38px}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column}.section-head{margin-bottom:38px}}
@media(max-width:430px){.language-toggle span{padding:4px 6px}.menu-button{padding:4px}.hero h1{font-size:3rem}.module-map{aspect-ratio:1/1.2}.module-pms{grid-area:1/1/4/7}.module-crm{grid-area:4/1/6/4}.module-gds{grid-area:4/4/6/7}.module-base{grid-area:6/1/7/7}.band-inner{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr}.footer-brand{grid-column:auto}}
@media(max-width:760px){.section{padding-top:62px;padding-bottom:62px}.page-hero{padding-top:68px;padding-bottom:44px}.hero{padding-top:54px;padding-bottom:60px}.custom-dev-card{grid-template-columns:1fr;padding:28px 24px;gap:20px}.split>aside{margin-bottom:24px}.content-block{grid-template-columns:1fr;gap:16px;padding-bottom:34px;margin-bottom:34px}.content-block>p,.content-block>.feature-list{grid-column:1}.cta-panel{padding:34px 26px}.pricing-section{padding-top:46px}.price-grid{gap:14px}.price-card{padding:26px;min-height:0}.price-card h3{min-height:0}.price-card:hover{transform:translateY(-3px)}.pricing-notice{grid-template-columns:1fr;gap:10px;padding:22px 24px}}
@media(max-width:1050px){.nav-menu{opacity:1;visibility:visible;pointer-events:auto;transform:none}.site-header.is-compact .primary-nav{top:69px}.product-flow{grid-template-columns:1fr 1fr}.product-flow article:last-child{grid-column:1/-1}.custom-dev-head{gap:42px}}
@media(max-width:760px){.site-header.is-compact{height:64px}.site-header.is-compact .primary-nav{top:63px}.product-overview-section::before{left:20px}.product-overview-section .section-head{padding-left:16px}.custom-dev-card{padding:30px 24px}.custom-dev-head{grid-template-columns:1fr;gap:16px;margin-bottom:28px}.custom-dev-paths{grid-template-columns:1fr}.custom-dev-path{min-height:0;padding:21px 20px}.custom-dev-path+article{border-left:0;border-top:1px solid #2a3449}.custom-dev-card .custom-dev-path span{margin-bottom:12px}.product-flow{grid-template-columns:1fr;margin-bottom:48px}.product-flow article,.product-flow article:last-child{grid-column:auto;min-height:170px;padding:25px}.product-flow span{margin-bottom:28px}.service-modes{grid-template-columns:1fr;gap:12px;margin-bottom:50px}.service-modes article{min-height:170px;padding:25px}.service-modes span{margin-bottom:26px}.cta-section{padding-left:20px;padding-right:20px}.cta-section .cta-panel{margin:0}.page-hero::after{right:-80px;width:170px;height:170px}.architecture-band .band-inner>div{padding-left:14px}.product-card-mark{margin-top:20px}}
@media(max-width:430px){.product-flow article{min-height:155px}.custom-dev-card::after{width:190px;height:190px}.architecture-band .band-inner>div{border-left:0;padding-left:0;border-top:1px solid rgba(255,255,255,.25);padding-top:14px}.cta-panel .button{width:100%;justify-content:space-between}}
@media(max-width:1050px){.nav-products>button{width:100%;text-align:left}.nav-products>button::after{float:right}.company-facts{margin-bottom:58px}.ecosystem-section .eco-box{min-height:225px;padding:24px}.ecosystem-section .eco-box h3{font-size:2.25rem}}
@media(max-width:1050px){.billing-steps{grid-template-columns:1fr 1fr}.billing-step:nth-child(3){border-left:0;border-top:1px solid var(--line)}.billing-step:nth-child(4){border-top:1px solid var(--line)}.refund-callout{grid-template-columns:1fr;gap:24px}.refund-callout>strong{white-space:normal}}
@media(max-width:760px){.ecosystem-section .ecosystem-visual{margin-bottom:50px}.ecosystem-section .architecture-card,.services-section .service-capability,.about-section .story-card{display:grid;grid-template-columns:1fr;gap:14px;padding:25px 22px;margin-bottom:12px}.ecosystem-section .architecture-card>p,.services-section .service-capability>p,.about-section .story-card>p{grid-column:1}.ecosystem-section .architecture-card h2,.services-section .service-capability h2,.about-section .story-card h2{padding-right:34px}.company-facts{grid-template-columns:1fr;gap:12px;margin-bottom:48px}.company-fact{min-height:138px;padding:24px}.pricing-rail{grid-template-columns:1fr;margin-bottom:16px}.pricing-rail>div{border-right:0;border-bottom:1px solid #2c3548;padding:18px 22px}.pricing-rail>div:last-child{border-bottom:0}.pricing-section{padding-top:46px}.ecosystem-section::before,.about-section::after{display:none}}
@media(max-width:760px){.billing-process{margin-top:52px;padding:28px 22px}.billing-process-head{grid-template-columns:1fr;gap:16px;margin-bottom:28px}.billing-steps{grid-template-columns:1fr}.billing-step+.billing-step,.billing-step:nth-child(3),.billing-step:nth-child(4){border-left:0;border-top:1px solid var(--line)}.billing-step{padding:23px 18px}.billing-step>span{margin-bottom:15px}.refund-callout{padding:29px 24px}.refund-callout::after{right:-130px}.legal-nav{grid-template-columns:1fr 1.45fr 1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}body.motion-ready .reveal-section{opacity:1;transform:none}}
