:root{--ink:#151a24;--muted:#667080;--line:#d8dce3;--blue:#3159ed;--deep:#112957;--pale:#f4f4f1;--navy:#111a2b}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:400 15px/1.6 'Inter',Arial,sans-serif}a{text-decoration:none;color:inherit}button{font:inherit;cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500;letter-spacing:normal}h1{font-size:50px;line-height:1.04}h2{font-size:48px;line-height:1.12}h3{font-size:28px;line-height:1.2}p{line-height:1.6}
.wrap{width:100%;max-width:1440px;padding-left:96px;padding-right:96px;margin:0 auto}
.header{height:64px;max-width:1248px;padding:0;position:absolute;z-index:10;top:24px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--pale)}
.logo{display:inline-flex;gap:10px;align-items:center;color:#282828;font-size:20px;line-height:1;font-weight:600;letter-spacing:-.01em;white-space:nowrap}.logo-mark{width:37px;height:37px;flex:none;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;background:var(--blue)}.logo-mark img{display:block;width:20px;height:18px}
.nav{display:flex;align-items:center;gap:28px;font-size:13px;color:var(--muted)}.nav a:hover{color:var(--blue)}.menu-toggle{display:none}.btn{height:56px;min-height:56px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:8px;font-weight:600;font-size:14px;white-space:nowrap;text-align:center;transition:background .2s,box-shadow .2s}.btn:hover{filter:brightness(.97)}.btn-blue{border-color:var(--blue);background:var(--blue);color:white}.btn-white{background:white;color:var(--ink)}.btn-dark-outline{color:#fff;background:transparent;border-color:#526484}
.shell,.pale{background:var(--pale)}.hero{height:929px;padding:152px 0 0}.hero-grid{display:grid;grid-template-columns:612px 612px;gap:24px;align-items:center;height:610px}.hero-grid>div:first-child{width:612px;padding:0;display:flex;flex-direction:column;align-items:start}.hero-grid h1{max-width:612px}.lead{color:var(--muted);font-size:18px;margin:28px 0 28px}.actions{display:flex;gap:12px;flex-wrap:wrap}.tiny{color:var(--muted);font-size:13px;margin-top:28px}.hero-art{width:612px;height:610px;position:relative;overflow:hidden;border-radius:24px;background:#eceef2}.micro,.small-muted{font-size:11px;color:var(--muted)}.hero-art>.micro{position:absolute;top:20px;left:20px;z-index:4}.original-3d-slot{position:relative}.hero-art .original-3d-slot{width:100%;height:100%;position:absolute;top:0;left:0;z-index:1}.hero-graph-lines{position:absolute;left:12%;top:32%;width:76%;height:44%;z-index:2;pointer-events:none}.hero-graph-lines img{display:block;width:100%;height:100%;object-fit:contain}.float-tag{position:absolute;background:white;border-radius:8px;padding:12px;color:var(--ink);font-size:12px;z-index:3;white-space:nowrap}.tag-left{left:30px;top:230px}.tag-right{right:24px;top:355px}.legend{position:absolute;bottom:20px;left:20px;right:20px;min-height:60px;display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.93);border-radius:10px;padding:16px;font-size:12px;z-index:4}.legend:before{content:'';display:block;flex:none;width:5px;height:28px;background:var(--blue);border-radius:3px}.hero-tail{height:39px;margin-top:64px;border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}
.section{padding:112px 0}.section:not(#tasks):not(#solutions):not(#data):not(#result):not(#scenarios):not(#reviews):not(#process):not(#services):not(#faq){height:auto}
#tasks{height:1315px}#solutions{height:960px}#data{height:1016px}#result{height:1638px}#scenarios{height:1347px}#reviews{height:891px}#process{height:694px}#services{height:1470px}#faq{height:1056px}
.eyebrow{font-size:12px;color:var(--muted);text-transform:uppercase;margin-bottom:24px;letter-spacing:0}.eyebrow b{color:var(--blue);font-weight:500}.section-heading{display:grid;grid-template-columns:minmax(0,1fr) 294px;align-items:end;gap:24px;margin-bottom:48px}.section-heading h2{max-width:860px}.section-heading>p{font-size:15px;color:var(--muted)}.cards{display:grid;gap:24px}.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.task-card{height:436px;min-width:0;border-radius:16px;padding:20px;display:flex;flex-direction:column;align-items:flex-start;gap:20px;background:var(--pale);overflow:hidden}.task-card:hover h3 i{transform:translate(2px,-2px)}.task-icon{height:256px;width:100%;min-height:256px;overflow:hidden}.task-card h3{width:100%;display:flex;justify-content:space-between;gap:12px;font-size:22px;line-height:1.25}.task-card h3 i{font-size:18px;line-height:1.2;color:var(--blue);font-style:normal;flex:none}.task-card p{color:var(--muted);font-size:14px;line-height:1.6;margin-top:auto}
.solution-cards{height:541px;align-items:stretch}.solution{min-height:541px;height:541px;padding:32px;border:1px solid var(--line);border-radius:16px;display:flex;flex-direction:column;gap:24px;background:#fff;overflow:hidden}.solution.featured{color:white;background:#132b58;border-color:#132b58}.solution .small-muted{font-size:11px;color:var(--muted)}.solution.featured .small-muted,.solution.featured p,.solution.featured small{color:#b8c2d4}.solution-art{height:100px;display:flex;align-items:center}.solution-art img{max-width:100%;max-height:70px;object-fit:contain;object-position:left center}.solution h3{font-size:28px;line-height:1.2}.solution p{color:var(--muted);font-size:15px}.solution .separator{height:1px;background:var(--line);margin-top:auto}.solution small:not(.small-muted){color:var(--muted);font-size:12px}.solution .btn{width:100%;margin-top:4px}
.deep{color:white;background:var(--deep)}.deep .eyebrow,.deep .section-heading>p{color:#b8c2d4}.tabs{height:116px;margin-bottom:48px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;align-items:stretch;background:#162252}.tab{min-height:88px;height:100%;background:#f0f0f0;color:#151a24;border:none;border-radius:10px;display:block;text-align:left;padding:16px;font-size:14px;line-height:1.6;font-weight:500}.tab small{display:block;margin-top:20px;color:var(--muted);font-size:11px;font-weight:400}.tab.active{background:var(--blue);color:white}.tab.active small{color:#dce4ff}.data-detail{height:445px;display:grid;grid-template-columns:1fr 445px;background:#162252;border-radius:16px;overflow:hidden}.data-detail>div:first-child{padding:40px}.pill{display:inline-block;padding:8px 12px;background:var(--blue);font-size:11px;border-radius:100px;margin-bottom:24px}.data-detail h3{font-size:36px;line-height:1.15}.data-detail p{margin:24px 0;color:#b8c2d4;font-size:16px}.data-bullets{font-size:14px;line-height:2.1;margin:10px 0}.data-detail small{font-size:12px;color:#b8c2d4}
#result .demo-panel{height:538px;padding:24px;border:1px solid #394c71;background:#fff;color:#151a24;border-radius:16px;overflow:hidden}.demo-path{display:flex;gap:14px;padding:16px 0;align-items:center;border-top:1px solid #112957;font-size:14px}.demo-path span{font-size:11px;color:#112957}.diagram{height:370px;position:relative;overflow:hidden}.graph-native-lines{position:absolute;inset:0;display:grid;place-items:center}.graph-native-lines img{max-width:100%;width:100%;height:auto;opacity:.75}.node{width:180px;height:66px;min-width:180px;position:absolute;background:var(--deep);color:#fff;padding:13px;border-radius:8px;display:flex;flex-direction:column;justify-content:center;font-size:14px;z-index:2}.node small{color:#a4b0c5;font-size:10px}.node.root{left:16px;top:145px;background:var(--blue)}.node.n2{left:324px;top:65px}.node.n3{left:324px;top:240px}.node.n4{left:632px;top:65px}.node.n5{left:632px;top:240px}.node.n6{left:980px;top:145px}.demo-panel>small{color:var(--muted);font-size:11px}
.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:48px;min-height:564px}.analytics{background:#192c60;border-radius:12px;padding:32px;min-height:564px}.analytics .micro{font-size:11px;color:#b8c2d4}.analytics h3{font-size:28px;margin-top:32px;margin-bottom:24px}.bars{height:190px;display:flex;align-items:end;gap:12px;padding-top:30px;padding-bottom:0;border-bottom:1px solid #50648e}.bars i{flex:1;min-width:0;background:#b8c2d4;border-radius:3px 3px 0 0}.bars i:nth-child(even){background:#8e8aad}.bars i:last-child{background:var(--blue)}.months{display:flex;justify-content:space-between;color:#b8c2d4;font-size:10px;white-space:pre-wrap}.analytics p{margin-top:24px;color:#b8c2d4;font-size:13px}.progress{margin-top:12px;background:#a8b7d1;height:8px}.progress span{height:100%;background:var(--blue);display:block;width:54%}.profile-row{border-bottom:1px solid #394c71;padding:20px 0;display:flex;flex-direction:column;gap:6px;font-size:14px}.profile-row span{font-size:12px;color:#b8c2d4}.disclaimer{color:#b8c2d4;font-size:12px;margin-top:48px}
.scenario-feature{height:344px;display:grid;grid-template-columns:33% 67%;align-items:center;gap:0;padding:0 0 20px;border-bottom:1px solid var(--line)}.scenario-feature h3{font-size:30px;margin:8px 0 20px}.scenario-feature p{color:var(--muted);font-size:15px;max-width:750px}.scenario-art{height:280px}.scenario-list{margin-top:48px}.scenario-list>div{height:107px;display:grid;grid-template-columns:35% 32.5% 32.5%;gap:12px;border-bottom:1px solid var(--line);align-items:center;font-size:14px}.scenario-list b{font-weight:500}.scenario-list p{color:var(--muted);font-size:14px}
.case-panel{min-height:389px;padding:40px;border-radius:16px;border:1px solid var(--line);background:white}.case-panel>small{color:var(--muted);font-size:11px}.case-panel h3{margin:24px 0 32px;font-size:36px}.case-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-bottom:32px}.case-steps>div{border-top:1px solid var(--line);padding-top:20px}.case-steps b{font-size:14px;font-weight:500}.case-steps p{margin-top:4px;color:var(--muted);font-size:13px}
.review-track{display:grid;grid-auto-flow:column;grid-auto-columns:560px;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.review-track::-webkit-scrollbar{display:none}.review{height:480px;min-height:480px;padding:40px;border-radius:16px;display:flex;flex-direction:column;scroll-snap-align:start;background:var(--pale)}.review:nth-child(even){background:#eceef2}.review .small-muted{margin-bottom:28px}.review h3{font-size:36px;line-height:1.2;margin-bottom:28px}.review b{font-weight:500;font-size:13px}.review p{font-size:13px;color:var(--muted);margin:5px 0 13px}.carousel-controls{margin-top:20px;display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:13px}.carousel-controls button{width:44px;height:40px;border:none;background:transparent;color:var(--muted);font-size:22px}
.midnight{background:#111a2b;color:white}.midnight .eyebrow{color:#b8c2d4}.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;min-height:201px}.process-step .step-no{background:#1b263b;border:1px solid #344058;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;margin-bottom:24px;font-size:13px}.process-step:first-child .step-no{background:var(--blue)}.process-step h3{font-size:19px;margin-bottom:10px}.process-step p{color:#b8c2d4;font-size:14px}.process-bottom{height:80px;margin-top:48px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #344058;color:#b8c2d4;font-size:13px}.filters{height:29px;display:flex;align-items:center;gap:8px;margin-bottom:48px}.filter{border:none;background:transparent;color:var(--muted);padding:5px 10px;border-radius:100px;font-size:11px;line-height:19px;white-space:nowrap}.filter.active{background:var(--blue);color:#fff}.services{min-height:848px}.service-card{height:412px;min-height:412px;display:flex;flex-direction:column;gap:0;padding:28px;background:#fff;border:1px solid var(--line);border-radius:16px}.service-card>small{color:var(--blue);font-size:11px;text-transform:uppercase}.service-card h3{margin-top:22px;font-size:28px;line-height:1.2;min-height:80px}.service-note{margin-top:17px}.service-note span{font-size:10px;color:var(--muted)}.service-note p{font-size:14px;color:var(--muted);margin-top:4px}.service-note:nth-of-type(2) p{color:var(--ink)}.service-card a{display:flex;align-items:center;justify-content:center;min-height:56px;padding:0 16px;margin-top:auto;border:1px solid var(--line);border-radius:8px;font-weight:600;color:var(--ink);font-size:14px}.info-note{min-height:90px;margin-top:48px;padding:30px 24px;border-radius:10px;background:#eceef2;color:var(--muted);font-size:12px}
.cta-blue{height:459px;padding:80px 0;background:var(--blue);color:#fff}.cta-grid{height:299px;display:grid;grid-template-columns:878px 330px;gap:40px;align-items:center}.cta-grid h2{font-size:48px;line-height:1.12;max-width:780px}.cta-grid p{font-size:15px;color:#dce4ff;margin:24px 0}.cta-grid .eyebrow{color:#dce4ff}.cta-grid .btn{background:white;color:var(--blue);border-color:white}
.faq{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item button{width:100%;min-height:82px;padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;background:none;border:0;color:var(--ink);text-align:left;font-size:16px;font-weight:500}.faq-item button span{color:var(--blue);font-size:24px;font-weight:400}.faq-answer{display:grid;grid-template-rows:0fr;color:var(--muted);font-size:14px;transition:grid-template-rows .35s ease}.faq-item.open .faq-answer{grid-template-rows:1fr}.faq-answer-inner{min-height:0;overflow:hidden;max-width:980px;padding:0 24px;opacity:0;transition:opacity .35s ease,padding-bottom .35s ease}.faq-item.open .faq-answer-inner{padding-bottom:22px;opacity:1}
.final-cta{height:710px}.final-grid{height:423px;display:grid;grid-template-columns:1fr 375px;gap:30px;align-items:center}.final-grid h2{font-size:48px;line-height:1.12}.final-grid p{margin:24px 0;color:#b8c2d4;font-size:16px;max-width:690px}.final-grid small{display:block;margin-top:22px;color:#b8c2d4}.footer{height:248px;padding:48px 0 32px;background:#0c1220;color:white}.footer-top{height:114px;display:grid;grid-template-columns:1fr 1.6fr .8fr;gap:50px}.footer .logo{color:white}.footer p,.footer span:not(.logo-mark){font-size:12px;color:#b8c2d4}.footer-links{font-size:12px;color:#b8c2d4;display:grid;grid-template-columns:1fr 1fr;gap:9px 20px}.footer-bottom{height:53px;border-top:1px solid #344058;padding-top:40px;font-size:11px;color:#b8c2d4;display:flex;justify-content:space-between}a:focus-visible,button:focus-visible{outline:3px solid #abc1ff;outline-offset:3px}
@media(min-width:1441px){.header{max-width:1248px}}
@media(max-width:1439px) and (min-width:801px){.wrap{padding-left:max(32px,6.6667vw);padding-right:max(32px,6.6667vw)}.header{left:max(32px,6.6667vw);right:max(32px,6.6667vw)}.hero-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-grid>div:first-child,.hero-art{width:100%}.hero-grid h1{font-size:clamp(36px,3.47vw,50px)}.section h2{font-size:clamp(36px,3.333vw,48px)}.diagram .node{max-width:16%}.node.n6{left:auto;right:16px}.cta-grid{grid-template-columns:2.65fr 1fr}}
@media(max-width:1100px){.nav{gap:13px;font-size:12px}.header .head-cta{padding:0 14px}.hero-grid{grid-template-columns:1fr 1fr}.hero-grid>div:first-child{width:100%}.hero-art{width:100%}.hero h1{font-size:40px}.hero .lead{font-size:16px}.section-heading h2{font-size:40px}.task-card h3{font-size:19px}.task-card p{font-size:13px}.data-detail{grid-template-columns:1fr 35%}.tabs{grid-template-columns:repeat(3,minmax(0,1fr));height:auto}.tab{min-height:86px}.service-card h3{font-size:22px}}
@media(max-width:800px){.wrap{padding-left:20px;padding-right:20px}.header{position:relative;top:auto;left:auto;right:auto;height:72px;padding:0 20px;max-width:none}.header .logo{margin-right:auto}.menu-toggle{display:block;border:0;background:transparent;color:var(--ink);font-size:26px}.nav{display:none;position:absolute;z-index:12;left:0;right:0;top:72px;background:#fff;padding:24px 20px;box-shadow:0 12px 20px #11295722;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.head-cta{display:none}.hero{padding:36px 0 50px;height:auto}.hero-grid{height:auto;display:flex;flex-direction:column;gap:28px}.hero-grid>div:first-child{width:100%}.hero h1{font-size:clamp(34px,8.5vw,46px)}.hero-art{width:100%;height:min(94vw,520px)}.hero-tail{height:auto;flex-wrap:wrap;margin-top:35px}.section,#tasks,#solutions,#data,#result,#scenarios,#reviews,#process,#services,#faq,.final-cta{height:auto;padding:70px 0}.section-heading{grid-template-columns:1fr;gap:16px;margin-bottom:32px}.section-heading h2{font-size:clamp(32px,7vw,42px)}.three{grid-template-columns:repeat(2,minmax(0,1fr))}.task-card{height:416px}.task-icon{height:230px;min-height:230px}.solution-cards{height:auto}.solution{height:auto;min-height:480px}.tabs{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:24px}.data-detail{height:auto;grid-template-columns:1fr}.data-detail .original-3d-slot{height:220px}#result .demo-panel{height:auto}.diagram{height:300px;overflow-x:auto}.diagram .node{min-width:auto;width:125px;height:56px;padding:7px;font-size:11px}.node.n2,.node.n3{left:25%}.node.n4,.node.n5{left:52%}.node.n6{left:auto;right:0}.result-grid{grid-template-columns:1fr;margin-top:24px}.analytics{min-height:410px}.scenario-feature{height:auto;grid-template-columns:1fr;padding:20px 0}.scenario-art{height:100px}.scenario-list>div{height:auto;padding:20px 0;grid-template-columns:1fr;gap:5px}.review-track{grid-auto-columns:min(560px,85vw)}.review{height:auto;min-height:430px}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.services{height:auto}.service-card{height:auto;min-height:412px}.filters{height:auto;flex-wrap:wrap;margin-bottom:28px}.cta-blue{height:auto;padding:75px 0}.cta-grid{height:auto;grid-template-columns:1fr}.cta-grid h2{font-size:38px}.cta-grid .original-3d-slot{display:none}.final-grid{height:auto;display:block}.final-grid h2{font-size:40px}.final-grid .original-3d-slot{display:none}.footer{height:auto}.footer-top{grid-template-columns:1fr 1fr;gap:20px;height:auto;padding-bottom:30px}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{height:auto;padding-top:25px}.case-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.hero h1{font-size:35px}.hero-art{height:360px}.hero-art>.micro{top:16px;left:16px}.tag-left{top:39%;left:12px}.tag-right{top:60%;right:12px}.legend{left:12px;right:12px;bottom:12px;padding:10px;font-size:10px;min-height:50px}.actions .btn{width:100%}.hero-tail span{width:100%}.three{grid-template-columns:1fr}.task-card{height:auto;min-height:295px}.task-icon{height:145px;min-height:145px}.task-card h3{font-size:22px}.tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.data-detail>div:first-child{padding:26px}.data-detail h3{font-size:30px}.case-steps,.process-grid{grid-template-columns:1fr}.review-track{grid-auto-columns:92%}.review{min-height:450px;padding:28px}.review h3{font-size:29px}.footer-top{grid-template-columns:1fr}.footer-top>div:first-child{grid-column:auto}}

/* Original paired Figma SVG pieces for the three solutions. */
.solution-art{display:flex;align-items:center;gap:16px;width:100%;height:100px;flex:none}
.solution-art img:first-child{height:42px;width:42px;max-width:42px;flex:none;object-fit:contain}
.solution-art img:nth-child(2){height:70px;width:220px;max-width:calc(100% - 58px);object-fit:contain}
/* Keep graph geometry at the exact Figma coordinates */
.hero-graph-lines{left:73.44px;top:195.2px;width:465.12px;height:268.4px}
.hero-graph-lines img{width:466px;height:270px;max-width:none}
.graph-native-lines img{width:1200px;height:370px;max-width:none;opacity:1}
/* Exact original final-CTA section height at desktop */
@media(min-width:801px){section.final-cta{height:710px!important}}
@media(max-width:800px){.hero-graph-lines{left:12%;top:32%;width:76%;height:44%}.hero-graph-lines img{width:100%;height:100%}}

/* ORIGINAL FIGMA 3D ASSETS — exact layer-to-layer mapping */
.original-3d-slot > img.original-3d { display:block; max-width:none; object-fit:contain; pointer-events:none; }
.hero-art .original-3d-slot > img {position:absolute;left:0;top:0;width:612px;height:610px;object-fit:cover;}
/* Figma 20:63, 20:71, 20:79, 20:88, 20:95, 20:103: source geometry */
.task-icon {flex:none;position:relative;height:256px;min-height:256px;}
.task-card:nth-child(1) .task-icon,.task-card:nth-child(2) .task-icon,.task-card:nth-child(5) .task-icon,.task-card:nth-child(6) .task-icon {width:256px;}
.task-card:nth-child(3) .task-icon,.task-card:nth-child(4) .task-icon {width:360px;max-width:100%;}
.task-icon img.task-3d {position:absolute;top:0;left:0;display:block;max-width:none;height:256px;object-fit:contain;object-position:center;pointer-events:none;}
.task-3d-1{width:323px}.task-3d-2{width:336px}.task-3d-3,.task-3d-4{width:360px}.task-3d-5{width:359px}.task-3d-6{width:369px;transform:translateX(-20px)}
.data-visual {width:445px;height:445px;position:relative;}
.data-visual img.original-3d {width:445px;height:445px;}
.scenario-feature{grid-template-columns:344px minmax(0,1fr);gap:24px;height:344px;align-items:center;padding:0;border-bottom:0;}
.scenario-art{width:344px;height:344px;overflow:hidden;}
.scenario-art img.original-3d{width:344px;height:344px;}
.cta-object{width:330px;height:299px;display:flex;align-items:center;justify-content:center;overflow:visible;}
.cta-object img.original-3d{width:299px;height:299px;}
.final-grid{grid-template-columns:777px 423px;gap:48px;}
.end-object{width:423px;height:423px;}
.end-object img.original-3d{width:423px;height:423px;}
@media(max-width:1439px) and (min-width:801px){
 .hero-art .original-3d-slot>img{width:100%;height:100%;}
 .data-visual{width:100%;max-width:445px}.data-visual img.original-3d{max-width:100%;height:auto;}
 .final-grid{grid-template-columns:minmax(0,1fr) minmax(240px,35%);gap:24px}
 .end-object,.end-object img.original-3d{width:100%;height:auto;aspect-ratio:1}
 .scenario-feature{grid-template-columns:minmax(250px,32%) minmax(0,1fr)}
 .scenario-art{max-width:100%}.scenario-art img.original-3d{width:100%;height:100%}
}
@media(max-width:800px){
 .hero-art .original-3d-slot>img{width:100%;height:100%}
 .task-icon{height:230px;min-height:230px}
 .task-icon img.task-3d{height:230px;transform-origin:0 0}
 .task-3d-1{width:290px}.task-3d-2{width:302px}.task-3d-3,.task-3d-4{width:323px}.task-3d-5{width:323px}.task-3d-6{width:332px;transform:translateX(-18px)}
 .data-visual{width:100%;height:260px;display:flex;justify-content:center;overflow:hidden}
 .data-visual img.original-3d{height:260px;width:260px}
 .scenario-feature{display:grid;grid-template-columns:1fr;gap:16px;height:auto;padding:12px 0 20px}
 .scenario-art{height:min(70vw,344px);width:min(70vw,344px);margin-inline:auto}
 .scenario-art img.original-3d{width:100%;height:100%}
 .cta-grid .original-3d-slot,.final-grid .original-3d-slot{display:flex}
 .cta-grid .original-3d-slot{width:100%;height:260px;justify-content:center;margin-top:24px}
 .cta-grid .original-3d-slot img.original-3d{width:260px;height:260px}
 .final-grid{grid-template-columns:1fr;display:grid;gap:18px;height:auto}
 .final-grid .original-3d-slot{width:min(80vw,423px);height:min(80vw,423px);margin:auto}
 .final-grid .original-3d-slot img.original-3d{width:100%;height:100%}
}
@media(max-width:520px){
 .task-icon{width:256px!important;height:195px;min-height:195px;max-width:100%;}
 .task-icon img.task-3d{height:195px;width:276px}
 .task-card:nth-child(3) .task-icon,.task-card:nth-child(4) .task-icon{width:100%!important}
 .task-3d-6{transform:translateX(-16px)}
 .cta-blue{overflow:hidden}
}


/* ----------- Result: match all Figma 20:186–20:264 layers ----------- */
#result .demo-panel{height:538px;background:#fff;color:#151a24;border:1px solid #394c71;border-radius:16px;display:flex;flex-direction:column;gap:24px;padding:24px;overflow:hidden}
.demo-divider{height:1px;flex:0 0 1px;background:#112957;width:100%}
#result .demo-path{height:20px;min-height:20px;gap:12px;align-items:flex-start;display:flex;border:0;padding:0;font-size:14px}
#result .demo-path b{font-weight:500;white-space:nowrap;color:#0c1220}
#result .demo-path span{font-size:11px;color:#112957;line-height:1.6}
.graph-scroll{width:100%;height:370px;min-height:370px;overflow:hidden}
#result .diagram{position:relative;width:1200px;height:370px;overflow:hidden}
#result .diagram img.graph-native-lines{position:absolute;top:0;left:0;width:1200px;height:370px;max-width:none;opacity:1;pointer-events:none}
#result .diagram .node{position:absolute;width:180px;height:66px;background:#112957;border:1px solid #112957;border-radius:8px;padding:13px;display:flex;flex-direction:column;justify-content:center;gap:1px;box-sizing:border-box;color:white;font-size:14px;min-width:0;max-width:none}
#result .diagram .node small{font-size:10px;color:#a5aebf;line-height:1.7}
#result .diagram .node span{font-size:14px;line-height:1.7}
#result .diagram .node.root{left:16px;top:145px;background:#3159ed;border-color:#3159ed}
#result .diagram .node.n2{left:324px;top:65px}
#result .diagram .node.n3{left:324px;top:240px}
#result .diagram .node.n4{left:624px;top:65px}
#result .diagram .node.n5{left:624px;top:240px}
#result .diagram .node.n6{left:1004px;top:65px;right:auto}
#result .diagram .node.n7{left:1004px;top:240px}
#result .demo-legend{width:100%;min-height:33px;display:flex;align-items:center;gap:20px;font-size:11px;line-height:1.5;overflow:hidden}
#result .demo-legend>span{flex:none;background:#3159ed;color:#fff;border-radius:100px;padding:8px 12px;white-space:nowrap}
#result .demo-legend>p{color:#112957;font-size:11px;line-height:1.5}
#result .result-grid{height:564px;min-height:564px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:48px}
#result .analytics{height:564px;min-height:564px;background:#162252;border-radius:16px;padding:32px;color:#fff;display:flex;flex-direction:column;overflow:hidden}
#result .analytics-caption{font-size:11px;font-weight:500;color:#b8c2d4;line-height:1.5}
#result .analytics h3{font-size:28px;line-height:1.25;color:#fff;font-weight:500;margin:24px 0 0}
#result .chart-intro{margin-top:24px}
#result .chart-intro p{margin:0;color:white;line-height:1.7;font-size:13px}
#result .chart-intro small{display:block;color:#b8c2d4;line-height:1.7;font-size:11px}
#result .month-bars{width:100%;height:156px;min-height:156px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;align-items:stretch;margin-top:24px}
#result .month-column{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px;height:156px}
#result .chart-bar{width:100%;min-width:0;max-height:128px;background:#b8c2d4;border-radius:4px 4px 0 0}
#result .chart-bar.purple{background:#938db3}
#result .chart-bar.blue{background:#3159ed}
#result .month-column>span{color:#b8c2d4;font-size:10px;line-height:12px}
#result .analytics-divider{height:1px;min-height:1px;background:#344058;margin-top:22px}
#result .counterparties{margin-top:16px;display:flex;flex-direction:column;gap:11px}
#result .counterparties p{font-size:12px;color:#b8c2d4;line-height:1.2;margin:0}
#result .counterparties .counter-title{font-size:13px;color:#fff;margin-bottom:0}
#result .counterparties b{font-weight:400;color:white}
#result .distribution{height:6px;display:flex;gap:3px;margin-top:2px}
#result .distribution span:first-child{background:#3159ed;flex:54}
#result .distribution span:nth-child(2){background:#b8c2d4;flex:32}
#result .distribution span:nth-child(3){background:#938db3;flex:14}
#result .company-identity{height:72px;min-height:72px;background:#3159ed;border-radius:8px;padding:16px;display:flex;align-items:center;gap:14px;margin-top:24px}
#result .company-identity>img{width:32px;height:32px;flex:none;object-fit:contain}
#result .company-identity>div{display:flex;flex-direction:column;line-height:1.5}
#result .company-identity b{font-size:16px;font-weight:400;color:#fff}
#result .company-identity small{font-size:11px;color:#b8c2d4}
#result .profile-items{display:flex;flex-direction:column;gap:18px;margin-top:24px}
#result .profile-item{display:flex;flex-direction:column;gap:0}
#result .profile-item b{font-weight:400;font-size:14px;line-height:1.5}
#result .profile-item span{font-size:12px;color:#b8c2d4;line-height:1.5}
#result .disclaimer{margin-top:48px;color:#b8c2d4;font-size:13px;line-height:1.6}
/* Keep assets visible and eager-load the handful of illustrations that are essential to page composition. */
.original-3d-slot > img.original-3d{opacity:1;visibility:visible}
@media(max-width:800px){
 #result .demo-panel{height:auto;min-height:532px;gap:14px;padding:18px;overflow:visible}
 #result .demo-path{height:auto;min-height:20px;flex-wrap:wrap}
 #result .graph-scroll{height:370px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#3159ed #e8eaf0}
 #result .diagram{width:1200px;height:370px}
 #result .diagram .node{max-width:none;width:180px;height:66px;padding:13px}
 #result .demo-legend{flex-wrap:wrap;overflow:visible;gap:8px}
 #result .result-grid{height:auto;min-height:0;display:grid;grid-template-columns:1fr;gap:20px;margin-top:24px}
 #result .analytics{height:auto;min-height:564px;padding:24px}
 #result .analytics h3{font-size:26px}
 #result .month-bars{gap:7px}
 #result .month-column{min-width:0}
 #result .profile-items{gap:20px}
 #result .disclaimer{margin-top:28px}
}

/* Section 06: restore the study/result annotation and full text hierarchy from original Figma */
.scenario-note{border-left:2px solid #3159ed;padding-left:16px;margin-top:24px;display:flex;flex-direction:column;gap:6px}
.scenario-feature .scenario-note p{margin:0;font-size:14px;line-height:1.6;color:#667080}
.scenario-feature .scenario-note p:first-child,.scenario-feature .scenario-note strong{font-weight:500;color:#151a24}
@media(min-width:801px){
 .scenario-feature>div:nth-child(2){max-width:880px}
 .scenario-feature .eyebrow{font-size:11px;font-weight:500;text-transform:none}
 .scenario-feature h3{font-size:36px;line-height:1.2;margin:12px 0 20px}
 .scenario-list>div{grid-template-columns:32% 32% 36%;font-size:15px}
 .scenario-list b{font-size:22px;line-height:1.25}
 .scenario-list p{font-size:14px}
}
/* Section 12 Figma first expanded accordion has a pale solid background and no inset divider. */
#faq .faq-item{transition:background-color .35s ease}
#faq .faq-item.open{background:#f4f4f1}
#faq .faq-item button{padding-left:24px;padding-right:24px}
#faq .faq-item.open .faq-answer-inner{max-width:980px}
@media (prefers-reduced-motion:reduce){
  .faq-answer,.faq-answer-inner,#faq .faq-item{transition:none}
}
@media (max-width:800px){
  #faq .faq-item button,.faq-answer-inner{padding-left:16px;padding-right:16px}
}
/* Build icon: natural size in highlighted profile summary. */
#result .company-identity img{max-width:32px;max-height:32px}


/* === Original 2x Figma PNGs: display at 1x CSS dimensions, never stretch or overflow === */
#tasks .task-card{overflow:hidden;isolation:isolate}
#tasks .task-icon{
  position:relative;display:block;flex:0 0 256px;
  height:256px;min-height:256px;width:100%!important;max-width:100%;
  overflow:hidden!important;margin:0;
}
#tasks .task-icon img.task-3d{
  display:block;position:absolute!important;top:0!important;left:50%!important;
  height:256px!important;width:256px!important;max-width:none!important;max-height:none!important;
  object-fit:contain!important;object-position:center!important;
  transform:translateX(calc(-50% + var(--asset-shift-x, 0px)))!important;
  pointer-events:none;
}
/* Both wide illustrations are 720x512 at 2x, so display at 360x256. */
#tasks .task-icon img.task-3d-3,
#tasks .task-icon img.task-3d-4{width:360px!important}
/* Transparent margins differ in the original exports. These offsets center the visible
   artwork without cutting any pixels from the source or changing its proportions. */
#tasks .task-card:nth-child(1) .task-icon{--asset-shift-x:-33px}
#tasks .task-card:nth-child(2) .task-icon{--asset-shift-x:-40px}
#tasks .task-card:nth-child(3) .task-icon{--asset-shift-x:-1px}
#tasks .task-card:nth-child(4) .task-icon{--asset-shift-x:22px}
#tasks .task-card:nth-child(5) .task-icon{--asset-shift-x:-49px}
#tasks .task-card:nth-child(6) .task-icon{--asset-shift-x:-44px}
@media (max-width:800px){
 #tasks .task-icon{height:230px;min-height:230px;flex-basis:230px}
 #tasks .task-icon img.task-3d{width:230px!important;height:230px!important;
   --asset-shift-x:calc(var(--asset-shift-full,0px) * .8984375)}
 #tasks .task-icon img.task-3d-3,#tasks .task-icon img.task-3d-4{width:323.4375px!important}
 #tasks .task-card:nth-child(1) .task-icon{--asset-shift-x:-30px}
 #tasks .task-card:nth-child(2) .task-icon{--asset-shift-x:-36px}
 #tasks .task-card:nth-child(3) .task-icon{--asset-shift-x:-1px}
 #tasks .task-card:nth-child(4) .task-icon{--asset-shift-x:20px}
 #tasks .task-card:nth-child(5) .task-icon{--asset-shift-x:-44px}
 #tasks .task-card:nth-child(6) .task-icon{--asset-shift-x:-40px}
}
@media (max-width:520px){
 #tasks .task-icon{height:190px;min-height:190px;flex-basis:190px;width:100%!important}
 #tasks .task-icon img.task-3d{width:190px!important;height:190px!important}
 #tasks .task-icon img.task-3d-3,#tasks .task-icon img.task-3d-4{width:267.1875px!important}
 #tasks .task-card:nth-child(1) .task-icon{--asset-shift-x:-25px}
 #tasks .task-card:nth-child(2) .task-icon{--asset-shift-x:-30px}
 #tasks .task-card:nth-child(3) .task-icon{--asset-shift-x:-1px}
 #tasks .task-card:nth-child(4) .task-icon{--asset-shift-x:16px}
 #tasks .task-card:nth-child(5) .task-icon{--asset-shift-x:-36px}
 #tasks .task-card:nth-child(6) .task-icon{--asset-shift-x:-32px}
 #tasks .task-card{min-height:0;height:auto}
}

/* === Hover/focus effects only: resting states remain as drawn in Figma === */
.btn,.service-card>a,.carousel-controls button,.filter,.task-card{
 transition:transform .25s cubic-bezier(.22,1,.36,1),
   background-color .25s ease,border-color .25s ease,color .25s ease,
   box-shadow .25s ease,filter .25s ease;
}
.btn:hover,.service-card>a:hover,.carousel-controls button:hover{transform:translateY(-2px)}
.btn-blue:hover{background:#214be9;border-color:#214be9;color:#fff;filter:none;box-shadow:0 10px 24px rgba(49,89,237,.24)}
.btn-white:hover{background:#f7f9ff;color:#3159ed;border-color:#3159ed;filter:none;box-shadow:0 9px 22px rgba(17,41,87,.09)}
.btn-dark-outline:hover{background:rgba(255,255,255,.13);color:white;border-color:rgba(255,255,255,.6);filter:none;box-shadow:0 10px 25px rgba(0,0,0,.15)}
.btn:active,.service-card>a:active,.carousel-controls button:active{transform:translateY(0) scale(.985)}
.service-card>a:hover{background:#3159ed;color:white;border-color:#3159ed;box-shadow:0 9px 22px rgba(49,89,237,.16)}
.filter:hover:not(.active){color:#3159ed;background:#edf1ff}
.task-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(17,41,87,.06)}
:where(.btn,.service-card>a,.carousel-controls button,.filter,.task-card):focus-visible{outline:2px solid #3159ed;outline-offset:3px}

/* 2026-10-23 — solutions: no clipped descriptions or buttons at intermediary viewport widths. */
@media (min-width:801px) and (max-width:1250px) {
  #solutions { height:auto; min-height:960px; }
  #solutions .solution-cards { grid-template-columns: repeat(2, minmax(0,1fr)); height:auto; align-items:stretch; }
  #solutions .solution { height:auto; min-height:541px; overflow:visible; }
  #solutions .solution .btn { flex-shrink:0; }
}
@media (max-width:800px){
  #solutions .solution-cards { height:auto; }
  #solutions .solution {height:auto;min-height:510px;overflow:visible;}
  #solutions .solution .btn {flex-shrink:0;}
}
/* Figma's six information directions form one horizontal row. On narrow screens,
   keep their geometry by scrolling the row instead of creating three/two rows. */
@media (max-width:1250px){
  #data .tabs {
    display:flex; flex-wrap:nowrap; align-items:stretch; gap:12px;
    width:100%; height:116px; min-height:116px;
    overflow-x:auto; overflow-y:hidden; overscroll-behavior-inline:contain;
    scroll-snap-type:x proximity; -webkit-overflow-scrolling:touch;
    scrollbar-width:thin; scrollbar-color:#718be7 #162252;
  }
  #data .tab {
    flex:0 0 198px; min-height:88px; height:100%;
    scroll-snap-align:start; padding:16px; white-space:normal;
  }
  #data .tab small {margin-top:18px;}
}
@media (max-width:520px){
  #data .tab {flex-basis:186px;}
}
/* Prevent the absolute header from exceeding the viewport on laptop widths. */
@media (min-width:801px) and (max-width:1439px){
  .header.wrap{width:auto;max-width:none;}
}
/* Buttons fully fit within Figma's 541px solution cards at 1440px. */
.solution .btn {margin-top:0;flex-shrink:0;}


/* 2026-10-23 — service cards: preserve Figma typography and actual usable spacing.
   The card is at least the 412px of the design, but can grow rather than overlap
   when descriptions wrap on a tablet or a narrow desktop viewport. */
#services .services {
  grid-auto-rows: minmax(412px,auto);
  align-items: stretch;
  /* Rows keep their own height when a filter leaves fewer cards than the
     container's min-height; otherwise the grid stretches them to fill it. */
  align-content: start;
}
#services .service-card {
  height: auto;
  min-height: 412px;
  min-width: 0;
  overflow: visible;
}
#services .service-card .service-note:nth-of-type(2) {
  margin-bottom: 28px;
}
#services .service-card > a {
  margin-top: auto;
  flex: 0 0 56px;
}
/* The 1440px Figma frame keeps its original vertical budget; at narrower widths,
   content can make the section taller instead of colliding with the next block. */
/* Section height follows the card rows (1 row for <=3 cards, 2 for "all"). */
#services { height: auto; min-height: 0; }
#services .services { min-height: 0; }
@media (max-width:520px) {
  #services .services { grid-auto-rows: auto; }
}
/* At widths where 28px Cyrillic product names do not fit three cards,
   use a two-column grid instead of letting letters escape card borders. */
@media (min-width:521px) and (max-width:1100px) {
  #services .services {grid-template-columns:repeat(2,minmax(0,1fr));}
}


/* Revised source image for task 05; original Figma export is 718 × 496 at 2×.
   Keep transparent edges intact; center the complete artwork in the original
   256 × 256 illustration slot, not by cropping or stretching it. */
#tasks .task-card:nth-child(5) .task-icon { --asset-shift-x: 0px; }
#tasks .task-card:nth-child(5) .task-icon img.task-3d-5 {
  width:359px !important; height:248px !important;
  left:50% !important; top:50% !important;
  max-width:none !important; max-height:none !important;
  object-fit:contain !important; object-position:center center !important;
  transform:translate(-50%,-50%) !important;
}
@media(max-width:800px) {
  #tasks .task-card:nth-child(5) .task-icon img.task-3d-5 {
    width:322.51953125px !important; height:222.8125px !important;
  }
}
@media(max-width:520px) {
  #tasks .task-card:nth-child(5) .task-icon img.task-3d-5 {
    width:266.4453125px !important; height:184.0625px !important;
  }
}

/* KonturX | One-time entrance when a block first reaches 78% of viewport.
   Marked blocks never hide, reset or replay once they have been shown.
   No layout changes: only opacity and a 16px paint-only transform. */
html.kx-entrance-ready .kx-enter {
  opacity:0;
  -webkit-transform:translate3d(0,16px,0);
  transform:translate3d(0,16px,0);
  -webkit-transition:opacity 1050ms ease-out,-webkit-transform 1050ms cubic-bezier(.16,1,.3,1);
  transition:opacity 1050ms ease-out,transform 1050ms cubic-bezier(.16,1,.3,1);
}
html.kx-entrance-ready .kx-enter.kx-shown {
  opacity:1;
  -webkit-transform:translate3d(0,0,0);
  transform:translate3d(0,0,0);
}
@media (prefers-reduced-motion:reduce) {
  html.kx-entrance-ready .kx-enter {opacity:1;transform:none;-webkit-transform:none;transition:none;-webkit-transition:none;}
}
