:root{--bg:#FAFBFF;--ink:#101828;--mut:#5B6577;--line:rgba(16,24,40,.09);--blue:#315EFF;--cyan:#00C8E8;--lav:#7B6CFF;--warn:#E5502F;
--sans:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
html{scroll-behavior:smooth;scroll-padding-top:76px}
*,*::before,*::after{box-sizing:inherit}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden;
background-image:radial-gradient(50% 40% at 100% 0,rgba(49,94,255,.07),transparent 70%),radial-gradient(40% 30% at 0 38%,rgba(123,108,255,.05),transparent 70%)}
button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.wrap{width:min(1200px,100% - 40px);margin-inline:auto}
.glass{background:rgba(255,255,255,.72);-webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4);border:1px solid rgba(255,255,255,.9);box-shadow:0 1px 0 #fff inset,0 0 0 1px rgba(16,24,40,.05),0 18px 40px -18px rgba(25,40,110,.3)}
/* header */
header{position:fixed;z-index:30;top:env(safe-area-inset-top,0px);left:0;right:0;transition:background .3s,box-shadow .3s}
header.sc{background:rgba(250,251,255,.85);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line)}
.hb{display:flex;align-items:center;gap:22px;height:66px}
.logo{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:-.02em;text-decoration:none}
.logo b{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font-size:12px;color:#fff;background:linear-gradient(135deg,var(--blue),var(--cyan))}
nav{display:flex;gap:4px;margin-left:auto}nav a{text-decoration:none;font-size:14.5px;font-weight:500;color:var(--mut);padding:8px 12px;border-radius:8px;transition:color .2s,background .2s}nav a:hover{color:var(--blue);background:rgba(49,94,255,.07)}
.lang{display:flex;background:rgba(16,24,40,.06);border-radius:9px;padding:3px}.lang button{border:0;background:none;border-radius:7px;padding:5px 10px;font-size:12px;font-weight:700;color:var(--mut)}.lang button[aria-pressed=true]{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.15)}
.burger{display:none;border:0;background:none;width:40px;height:40px;font-size:20px}
/* buttons */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 26px;border-radius:12px;border:1px solid rgba(16,24,40,.18);background:#fff;font-weight:600;font-size:15.5px;text-decoration:none;overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s}
.btn:hover{transform:translateY(-2px);box-shadow:0 16px 30px -14px rgba(49,94,255,.5);border-color:var(--blue)}
.btn.p{background:linear-gradient(135deg,#315EFF,#1F45D6);color:#fff;border-color:transparent}
.btn.p::after{content:'';position:absolute;inset:0;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s}.btn.p:hover::after{transform:translateX(120%)}
.btn.sm{min-height:40px;padding:0 18px;font-size:14px}.btn[disabled],.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
/* hero */
.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:32px;align-items:center;min-height:100svh;padding:84px 0 36px}
.eb{font-size:12.5px;font-weight:700;letter-spacing:.14em;color:var(--blue);margin:0 0 20px}
h1{font-size:clamp(38px,5.1vw,74px);line-height:1.03;letter-spacing:-.045em;font-weight:800;margin:0;max-width:12.6em}
.gx{background:linear-gradient(95deg,#315EFF 10%,#00C8E8 95%);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.1em}
.lead{font-size:clamp(16px,1.45vw,19px);color:var(--mut);max-width:34em;margin:22px 0 0}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.cred{margin:22px 0 0;font-size:13.5px;font-weight:500;color:var(--mut);display:flex;align-items:center;gap:10px}.cred::before{content:'';width:26px;height:1px;background:var(--blue)}
.stage{position:relative;width:100%;height:min(620px,76svh);min-height:440px;--mx:0;--my:0}
.dp{transform:translate(calc(var(--mx)*var(--d,0)*1px),calc(var(--my)*var(--d,0)*1px));transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.glow{position:absolute;left:24%;top:8%;width:60%;height:80%;background:radial-gradient(closest-side,rgba(49,94,255,.34),rgba(0,200,232,.12) 60%,transparent);filter:blur(30px)}
.slab{position:absolute;left:30%;top:10%;width:62%;height:82%;border-radius:26px;background:linear-gradient(160deg,rgba(49,94,255,.16),rgba(0,200,232,.08));border:1px solid rgba(49,94,255,.22)}
.frame{position:absolute;left:21%;top:5%;width:62%;aspect-ratio:4/5;border-radius:22px;padding:6px}
.ph{position:relative;width:100%;height:100%;border-radius:16px;overflow:hidden;background:linear-gradient(160deg,#EEF2FF,#E3F7FC);background-size:cover;background-position:center top;display:grid;place-items:center;text-align:center;padding:16px;color:var(--mut);border:1px dashed rgba(49,94,255,.4)}
.ph.has{border:0}.ph.has .phs{display:none}.phs b{display:block;font-size:14px;color:var(--ink)}.phs span{font-size:12.5px}.phs .btn{margin-top:12px}
.cr{position:absolute;width:14px;height:14px;border:2px solid var(--blue);opacity:.7}.cr.a{left:-4px;top:-4px;border-right:0;border-bottom:0;border-radius:6px 0 0 0}.cr.b{right:-4px;top:-4px;border-left:0;border-bottom:0;border-radius:0 6px 0 0}.cr.c{left:-4px;bottom:-4px;border-right:0;border-top:0;border-radius:0 0 0 6px}.cr.d{right:-4px;bottom:-4px;border-left:0;border-top:0;border-radius:0 0 6px 0}
.fp{position:absolute;border-radius:16px;padding:12px 15px;animation:fl 7s ease-in-out infinite;pointer-events:none}
.fp b{display:block;font-size:25px;line-height:1.05;letter-spacing:-.035em;font-variant-numeric:tabular-nums}.fp span{display:block;font-size:11.5px;color:var(--mut);font-weight:500;margin-top:3px}
.fp i{position:absolute;top:12px;right:12px;width:7px;height:7px;border-radius:50%;background:var(--cyan);animation:pg 2.4s infinite}
.fp.p1{top:3%;right:0}.fp.p2{bottom:9%;left:0;animation-delay:-2.5s}.fp.p3{top:34%;left:0;padding:8px 13px;animation-delay:-4s}.fp.p4{bottom:2%;right:4%;animation-delay:-1.2s}
.fp.p3 b{font-size:14px;letter-spacing:-.01em}
.fp svg{display:block;width:80px;height:20px;margin-top:6px}.fp svg path{fill:none;stroke:var(--blue);stroke-width:2;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;animation:dr 2.2s .5s forwards}
@keyframes fl{50%{translate:0 -8px}}@keyframes pg{70%{box-shadow:0 0 0 7px rgba(0,200,232,0)}0%{box-shadow:0 0 0 0 rgba(0,200,232,.5)}}@keyframes dr{to{stroke-dashoffset:0}}
/* sections */
section.s{padding:104px 0 0}
h2{font-size:clamp(30px,3.9vw,52px);line-height:1.07;letter-spacing:-.04em;font-weight:800;margin:0;max-width:16em}
.sl{color:var(--mut);max-width:40em;margin:16px 0 0;font-size:17px}
.rv{opacity:0;transform:translateY(22px);transition:opacity .8s cubic-bezier(.2,.7,.2,1) var(--d,0ms),transform .8s cubic-bezier(.2,.7,.2,1) var(--d,0ms)}.rv.in{opacity:1;transform:none}
.mg{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:44px}
.m{position:relative;border-radius:22px;padding:26px 24px 24px;overflow:hidden}
.m::before{content:'';position:absolute;left:0;top:0;height:3px;width:100%;background:linear-gradient(90deg,var(--blue),var(--cyan));transform:scaleX(.2);transform-origin:0 0;transition:transform .9s cubic-bezier(.2,.7,.2,1)}.m.in::before{transform:scaleX(1)}
.m .n{font-size:clamp(40px,4.4vw,60px);font-weight:800;letter-spacing:-.05em;line-height:1;font-variant-numeric:tabular-nums}
.m .fr{font-size:12.5px;font-weight:600;color:var(--blue);margin-top:8px}
.m .l{font-weight:700;margin-top:14px}.m .c{font-size:13.5px;color:var(--mut);margin-top:6px;line-height:1.5}
.pl{display:grid;gap:22px;margin-top:48px}
.pj{position:relative;display:grid;grid-template-columns:1.15fr 1fr;gap:34px;align-items:center;border-radius:28px;padding:30px;overflow:hidden}
.pj:nth-child(even){grid-template-columns:1fr 1.15fr}.pj:nth-child(even) .pv{order:2}
.pj::after{content:'';position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .35s;background:radial-gradient(420px circle at var(--sx,50%) var(--sy,0),rgba(49,94,255,.09),transparent 65%)}.pj:hover::after{opacity:1}
.pv{transition:transform .5s cubic-bezier(.2,.7,.2,1)}.pj:hover .pv{transform:translateY(-6px) scale(1.015)}
.pnum{font-size:13px;font-weight:700;color:var(--mut)}
.pj h3{font-size:clamp(24px,2.5vw,34px);letter-spacing:-.035em;line-height:1.1;margin:8px 0 12px;font-weight:800}
.bd{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;padding:5px 11px;border-radius:999px}.bd::before{content:'';width:7px;height:7px;border-radius:50%;background:currentColor}
.bd.demo{background:rgba(0,200,232,.14);color:#007E94}.bd.con{background:rgba(123,108,255,.14);color:#5646D8}
.pj dl{margin:16px 0 0;display:grid;gap:12px}.pj dt{font-size:11.5px;font-weight:700;letter-spacing:.08em;color:var(--blue)}.pj dd{margin:2px 0 0;color:var(--mut);font-size:14.5px}
.pj .btn{margin-top:22px}
.win{border-radius:14px;background:#fff;border:1px solid var(--line);box-shadow:0 30px 50px -28px rgba(25,40,110,.5);overflow:hidden}
.wh{display:flex;align-items:center;gap:5px;padding:9px 13px;background:#F3F5FB;border-bottom:1px solid var(--line)}.wh i{width:9px;height:9px;border-radius:50%;background:#D3D9E6}.wh span{font-size:11px;color:var(--mut);margin-left:8px;font-weight:500}.wh em{margin-left:auto;font-size:10.5px;font-style:normal;font-weight:700;color:var(--blue)}
.wb{padding:14px;display:grid;gap:10px}
.tl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tile{border:1px solid var(--line);border-radius:10px;padding:8px 10px}.tile small{display:block;font-size:10.5px;color:var(--mut);font-weight:500}.tile b{font-size:18px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.wb svg{width:100%;height:auto;display:block}
.tb{display:grid;grid-template-columns:1.1fr 1.4fr .8fr;gap:10px;align-items:center;font-size:12px;padding:7px 4px;border-bottom:1px solid var(--line)}.tb.h{font-size:10.5px;font-weight:700;color:var(--mut);border-bottom:1px solid var(--line)}
.br{height:7px;border-radius:4px;background:#E8ECF6;overflow:hidden}.br i{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,var(--blue),var(--cyan));transition:width 1s}
.rk{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:6px;text-align:center}.rk.l{background:rgba(0,200,232,.14);color:#007E94}.rk.m2{background:rgba(255,170,60,.18);color:#A5600A}.rk.h{background:rgba(229,80,47,.14);color:#B63514}
.ch{display:grid;gap:8px;min-height:150px;align-content:start}.bub{font-size:12.5px;padding:8px 12px;border-radius:12px;max-width:88%}.bub.u{background:var(--blue);color:#fff;justify-self:end;border-bottom-right-radius:4px}.bub.a{background:#EEF2FF;border-bottom-left-radius:4px}
.sg{display:flex;flex-wrap:wrap;gap:6px}.sg button{border:1px solid rgba(49,94,255,.3);background:#fff;border-radius:999px;padding:5px 11px;font-size:11.5px;font-weight:600;color:var(--blue)}.sg button:hover,.sg button.on{background:var(--blue);color:#fff}
.sv{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:44px}
.sc{position:relative;border-radius:22px;padding:0;transition:transform .35s,box-shadow .35s}.sc:hover,.sc.open{transform:translateY(-5px)}
.sc>button{display:block;width:100%;text-align:left;border:0;background:none;padding:26px 24px 20px;border-radius:22px}
.sc .ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(49,94,255,.14),rgba(0,200,232,.14));color:var(--blue);margin-bottom:18px}
.sc h3{font-size:19px;letter-spacing:-.025em;line-height:1.2;margin:0 0 8px;font-weight:700}.sc p{margin:0;color:var(--mut);font-size:14.5px}
.sx{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.2,.7,.2,1)}.sc:hover .sx,.sc:focus-within .sx,.sc.open .sx{grid-template-rows:1fr}
.sx>div{overflow:hidden}.sx ul{list-style:none;margin:0;padding:0 24px;display:grid;gap:6px}.sx li{font-size:13.5px;font-weight:600;padding-left:20px;position:relative}.sx li::before{content:'';position:absolute;left:0;top:.55em;width:10px;height:2px;background:var(--cyan)}
.sx small{display:block;padding:12px 24px 22px;font-size:12.5px;color:var(--mut);line-height:1.5}
.ab{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:center}
.af{position:relative;width:min(100%,400px);aspect-ratio:4/5;border-radius:24px;padding:7px;margin-inline:auto}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 26px}.chp{font-size:13px;font-weight:600;padding:6px 13px;border-radius:999px;background:rgba(49,94,255,.08);color:#1F3FB8}
.ab p{color:var(--mut);font-size:17px;margin:18px 0 0;max-width:36em}
.fin{position:relative;border-radius:32px;padding:clamp(34px,6vw,76px);overflow:hidden;color:#fff;background:radial-gradient(60% 90% at 100% 0,rgba(0,200,232,.5),transparent 60%),linear-gradient(135deg,#0E1B4D,#1C3FCB)}
.fin::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:linear-gradient(90deg,transparent,#000);mask-image:linear-gradient(90deg,transparent,#000)}
.fin>*{position:relative}.fin h2{color:#fff;max-width:14em}.fin p{color:rgba(255,255,255,.82);max-width:36em;margin:16px 0 0;font-size:17px}
.fin .btn{border-color:rgba(255,255,255,.4);background:rgba(255,255,255,.1);color:#fff}.fin .btn.p{background:#fff;color:#1B3BC4}.fin .btn:hover{box-shadow:0 16px 30px -14px rgba(0,0,0,.5)}
.fn{font-size:12.5px;color:rgba(255,255,255,.7);margin-top:14px}
footer{padding:44px 0 46px;margin-top:80px;font-size:13px;color:var(--mut);border-top:1px solid var(--line)}
/* dialog */
dialog{border:0;border-radius:24px;padding:0;width:min(940px,100% - 24px);max-height:calc(100svh - 24px);background:var(--bg);color:var(--ink);box-shadow:0 40px 100px -20px rgba(10,20,70,.55)}
dialog::backdrop{background:rgba(10,18,50,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
dialog[open]{animation:dk .35s cubic-bezier(.2,.7,.2,1)}@keyframes dk{from{opacity:0;transform:translateY(18px) scale(.98)}}
.dh{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:12px;padding:16px 22px;background:rgba(250,251,255,.92);border-bottom:1px solid var(--line)}.dh h3{margin:0;font-size:19px;letter-spacing:-.02em}.dh button{margin-left:auto;border:1px solid var(--line);background:#fff;border-radius:10px;width:38px;height:38px;font-size:18px}
.db{padding:22px}
.bn{border:1px solid rgba(229,80,47,.35);background:rgba(255,242,236,.8);border-radius:12px;padding:11px 16px;font-size:14px;margin-bottom:16px}
.sim{display:grid;grid-template-columns:260px 1fr;gap:18px}
.sim label{display:flex;justify-content:space-between;font-size:14px;font-weight:600;margin-bottom:4px}.sim output{color:var(--blue);font-variant-numeric:tabular-nums}.sim .sd{margin-bottom:16px}
input[type=range]{width:100%;accent-color:var(--blue);min-height:28px}
.pr{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.pr button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 11px;font-size:13px;font-weight:600}.pr button.on{background:var(--ink);color:#fff}
.kp{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}.kc{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:#fff}.kc b{font-size:24px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.kc small{display:block;font-size:12px;color:var(--mut);line-height:1.3}.kc.bad b{color:var(--warn)}.kc.ok b{color:#0092AD}
.ins{margin-top:10px;border-radius:14px;padding:12px 16px;background:#fff;border-left:4px solid var(--cyan);font-size:14px}.ins.bad{border-left-color:var(--warn)}
.lg{display:flex;gap:14px;font-size:12px;color:var(--mut);margin-top:6px}.lg i{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:5px}
.ex{display:grid;gap:18px}.ex h4{margin:0;font-size:17px;letter-spacing:-.02em}.ex .d{font-size:13px;color:var(--mut)}.ex ul{margin:6px 0 0;padding-left:18px;color:var(--mut);font-size:14.5px}
.fm{display:grid;gap:12px}.fm input,.fm textarea{border:1px solid rgba(16,24,40,.18);border-radius:10px;padding:12px 14px;background:#fff;width:100%}.fm label{font-size:13px;font-weight:600}
.tg{display:flex;gap:6px}.tg button{flex:1;border:1px solid var(--line);background:#fff;border-radius:10px;min-height:44px;font-weight:600}.tg button.on{background:var(--blue);color:#fff;border-color:var(--blue)}
@media(max-width:1020px){.mg{grid-template-columns:1fr 1fr}.sv{grid-template-columns:1fr 1fr}.pj,.pj:nth-child(even){grid-template-columns:1fr}.pj:nth-child(even) .pv{order:0}.sim{grid-template-columns:1fr}.hero{grid-template-columns:1fr;min-height:0;padding-top:96px;gap:24px}.stage{max-width:560px;margin-inline:auto}.ab{grid-template-columns:1fr;gap:34px}}
@media(max-width:820px){nav{display:none;position:absolute;left:12px;right:12px;top:62px;flex-direction:column;margin:0;padding:8px;border-radius:16px;background:rgba(255,255,255,.97);box-shadow:0 20px 50px -20px rgba(30,40,100,.45);border:1px solid var(--line)}nav.open{display:flex}nav a{padding:14px 12px;font-size:16px}.burger{display:block}.lang{margin-left:auto}.hb>.btn{display:none}section.s{padding-top:80px}}
@media(max-width:560px){.mg,.sv{grid-template-columns:1fr}.ctas .btn{width:100%}.stage{height:430px;min-height:0}.fp.p3{display:none}.fp b{font-size:21px}.kp{grid-template-columns:1fr 1fr}.pj{padding:20px}h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.rv{opacity:1;transform:none}.fp svg path{stroke-dashoffset:0}}

.deck{position:absolute;inset:0;pointer-events:none;z-index:4}
.dk{position:absolute;width:172px;pointer-events:auto;transition:left 1s cubic-bezier(.2,.7,.2,1),top 1s cubic-bezier(.2,.7,.2,1),opacity .7s,scale 1s cubic-bezier(.2,.7,.2,1)}
.dk[data-s="0"]{left:calc(100% - 176px);top:2%}.dk[data-s="1"]{left:calc(100% - 160px);top:60%}.dk[data-s="2"]{left:0;top:68%}.dk[data-s="3"]{left:0;top:13%}
.dk[data-s="4"]{left:20%;top:-10%;opacity:0;scale:.85;pointer-events:none}.dk[data-s="5"]{left:54%;top:-10%;opacity:0;scale:.85;pointer-events:none}
.dk:hover,.dk.open,.dk:focus-within{z-index:6}
.fi{display:block;width:100%;text-align:left;border:0;border-radius:16px;padding:12px 15px;cursor:pointer;animation:fl 7s ease-in-out infinite;animation-delay:var(--fd,0s)}
.fi b{display:block;font-size:23px;line-height:1.05;letter-spacing:-.035em;font-weight:800;font-variant-numeric:tabular-nums}
.fi .su{display:block;font-size:11.5px;font-weight:600;color:var(--ink);margin-top:5px;line-height:1.3}
.fi .co{display:block;font-size:10.5px;font-weight:700;color:var(--blue);margin-top:4px}
.fi .fd{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s}.fi .fd>span{display:block;overflow:hidden;font-size:11.5px;color:var(--mut);line-height:1.45}
.dk:hover .fd,.dk.open .fd,.dk:focus-within .fd{grid-template-rows:1fr}.dk:hover .fd>span,.dk.open .fd>span,.dk:focus-within .fd>span{padding-top:8px}
.rt{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.rt+.mg{margin-top:18px}
.tb2{border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 16px;font-weight:600;font-size:14px;transition:all .2s}.tb2:hover{border-color:var(--blue)}.tb2.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.m.off{display:none}.m{transition:transform .35s,box-shadow .35s}.m:hover{transform:translateY(-4px);box-shadow:0 24px 44px -22px rgba(30,50,140,.4)}
.mb{display:block;width:100%;text-align:left;border:0;background:none;padding:0;cursor:pointer;border-radius:12px}
.m .n.t{font-size:clamp(24px,2.3vw,31px);line-height:1.12;letter-spacing:-.035em}
.cn{display:inline-block;margin-top:12px;font-size:11.5px;font-weight:700;color:var(--blue);background:rgba(49,94,255,.08);padding:3px 9px;border-radius:6px}
.mx{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.2,.7,.2,1)}.mx>div{overflow:hidden}.mx p{margin:12px 0 0;font-size:13.5px;color:var(--mut);line-height:1.5}
.m.open .mx,.m:hover .mx,.m:focus-within .mx{grid-template-rows:1fr}
@media(max-width:820px){
.deck[data-m],.hero>.deck{position:static;display:grid;gap:10px;pointer-events:auto;z-index:1}
.hero>.deck .dk[data-s]{position:static;width:auto;left:auto;top:auto;opacity:1;scale:1;pointer-events:auto;transform:none}
.hero>.deck .dk.x{display:none}.hero>.deck .fd{grid-template-rows:1fr}.hero>.deck .fd>span{padding-top:8px}
.hero>.deck .fi{animation:none}.hero>.deck .fi b{font-size:26px}}
/* modal structure */
dialog{overflow:hidden}dialog[open]{display:flex;flex-direction:column}
.dh{position:static;flex:none}
.db{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}
dialog.wide{width:min(1280px,100% - 24px);height:min(940px,calc(100svh - 24px))}
dialog.wide .db{padding:0 24px 24px}
.dbd{margin-left:auto;font-size:11.5px;font-weight:600;color:#1B3BC4;background:rgba(49,94,255,.08);border:1px solid rgba(49,94,255,.2);padding:4px 10px;border-radius:999px;white-space:nowrap}.dbd[hidden]{display:none}.dbd:not([hidden])+button{margin-left:0}
/* supplier demo */
.su-tabs{position:sticky;top:0;z-index:3;display:flex;gap:4px;overflow-x:auto;padding:10px 0;margin:0 -24px 16px;padding-inline:24px;background:rgba(250,251,255,.96);border-bottom:1px solid var(--line);scrollbar-width:thin}
.su-tabs button{flex:none;border:1px solid transparent;background:transparent;border-radius:10px;padding:9px 14px;font-size:14px;font-weight:600;color:var(--mut);white-space:nowrap;transition:background .2s,color .2s}
.su-tabs button:hover{background:#fff;color:var(--ink)}.su-tabs button.on{background:var(--ink);color:#fff}
.su-tabs button:focus-visible,.supane button:focus-visible,.supane select:focus-visible,.supane g:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.supane h4{margin:0 0 4px;font-size:16px;letter-spacing:-.02em}.supane h5{margin:0 0 4px;font-size:14px}.supane .sb{margin:0 0 10px;font-size:13px;color:var(--mut);line-height:1.45}
.supane .su-h{margin-bottom:6px;font-size:13px;color:var(--mut)}
.su-p{border:1px solid var(--line);border-radius:18px;background:#fff;padding:18px;min-width:0;margin-bottom:16px}
details.su-p summary{cursor:pointer}
.su-2{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px;align-items:start}.su-2e{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.su-2>.su-p,.su-2e>.su-p{margin-bottom:16px}
.su-stick{position:sticky;top:64px}
.su-g{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin-bottom:12px}.su-k8{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.su-g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.su-k{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:#fff}.su-k b{display:block;font-size:22px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.su-k small{display:block;font-size:12px;color:var(--mut);line-height:1.3}.su-k i{display:block;font-style:normal;font-size:11.5px;color:#007E94;margin-top:3px}.su-k i.bad{color:var(--warn)}
.su-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;justify-content:space-between;margin-bottom:12px}
.su-f{display:grid;gap:3px;font-size:12px;font-weight:600;color:var(--mut)}.su-f select{border:1px solid rgba(16,24,40,.18);border-radius:9px;padding:8px 10px;background:#fff;font:inherit;font-size:13.5px;color:var(--ink);min-height:38px;max-width:100%}
.su-seg{display:inline-flex;flex-wrap:wrap;gap:4px;padding:3px;background:#EEF1F8;border-radius:10px}.su-seg button{border:0;background:transparent;border-radius:8px;padding:7px 12px;font-size:13px;font-weight:600;color:var(--mut)}.su-seg button.on{background:#fff;color:var(--ink);box-shadow:0 1px 4px rgba(16,24,40,.12)}
.supane .btn.sm{min-height:36px;padding:0 14px;font-size:13px;margin-top:8px}
.supane svg{display:block;width:100%;height:auto}.su-sw{overflow-x:auto}.su-sw svg{min-width:420px}
.su-tw{overflow-x:auto;-webkit-overflow-scrolling:touch}
.su-t{width:100%;border-collapse:collapse;font-size:13px}.su-t th,.su-t td{padding:8px 10px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.su-t th{font-size:11.5px;color:var(--mut);font-weight:600;white-space:nowrap}.su-t th small{display:block;font-weight:500}.su-t td{font-variant-numeric:tabular-nums}
.su-hmt td,.su-hmt th[scope]{padding:3px}.su-hmt tr.sel th[scope]{background:rgba(49,94,255,.06)}
.su-hmc{width:100%;border:0;border-radius:8px;padding:9px 6px;font-weight:700;font-size:13px;color:var(--ink);display:flex;gap:6px;align-items:center;justify-content:center;white-space:nowrap}
.su-rl{border:0;background:transparent;text-align:left;font:inherit;padding:2px 0;color:var(--ink)}.su-rl small{display:block;color:var(--mut);font-size:11.5px}.su-rl:hover b{color:var(--blue)}
.su-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.su-sc{text-align:left;border:1px solid var(--line);background:#fff;border-radius:16px;padding:14px;display:grid;gap:7px;transition:transform .2s,box-shadow .2s,border-color .2s}.su-sc:hover{transform:translateY(-2px);box-shadow:0 14px 30px -18px rgba(30,40,100,.5)}.su-sc.on{border-color:var(--blue);box-shadow:0 0 0 2px rgba(49,94,255,.18)}
.su-ch{display:flex;align-items:center;gap:8px}.su-rk{font-size:11.5px;color:var(--mut);font-weight:700}.su-sco{margin-left:auto;font-size:22px;font-weight:800;letter-spacing:-.03em;color:var(--blue)}
.su-nm{font-size:13.5px;font-weight:600;line-height:1.3}.su-nm small{display:block;font-weight:500;color:var(--mut);font-size:11.5px}
.su-mb{display:grid;grid-template-columns:96px 1fr 28px;gap:8px;align-items:center;font-size:12px;color:var(--mut)}.su-mb i{display:block;height:6px;border-radius:4px;background:#EEF1F8;overflow:hidden}.su-mb s{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,var(--blue),var(--cyan))}.su-mb b{color:var(--ink);text-align:right;font-variant-numeric:tabular-nums}.su-w{margin-bottom:6px}
.su-sc .su-ft{display:flex;justify-content:space-between;font-size:11.5px;color:var(--mut);margin:0}
.su-ring{width:84px;flex:none}.su-dh{display:flex;gap:14px;align-items:center;margin-bottom:12px}
.su-dn{display:grid;grid-template-columns:130px 1fr;gap:14px;align-items:center}
.su-lg{display:block;width:100%;text-align:left;border:0;background:transparent;font:inherit;font-size:13.5px;padding:6px 8px;border-radius:10px}.su-lg:hover{background:#EEF1F8}.su-lg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px}.su-lg small{display:block;color:var(--mut);font-size:11.5px;margin-left:16px}
.su-br{display:grid;grid-template-columns:minmax(80px,150px) 1fr 62px;gap:10px;align-items:center;font-size:12.5px;margin:7px 0}.su-br .tr{position:relative;display:flex;height:10px;border-radius:5px;background:#EEF1F8;overflow:hidden}.su-br .tr>span{display:block;height:100%}.su-br>b{text-align:right;font-variant-numeric:tabular-nums}.su-th{position:absolute;top:-2px;bottom:-2px;width:2px;background:var(--ink)}
.su-so{font-style:normal;font-size:10px;font-weight:700;color:var(--warn);margin-left:3px}
.su-al,.su-ac{display:flex;gap:10px;width:100%;text-align:left;border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 12px;margin-bottom:8px;font:inherit;font-size:13px;line-height:1.4}.su-al{cursor:pointer}.su-al:hover{border-color:var(--blue)}
.su-al small,.su-ac small{display:block;color:var(--mut);font-size:11.5px;margin-top:2px}
.pp{flex:none;align-self:flex-start;font-size:10.5px;font-weight:800;border-radius:6px;padding:2px 7px}.pp.p1{background:rgba(229,80,47,.14);color:#B63514}.pp.p2{background:rgba(255,170,60,.18);color:#A5600A}.pp.p3{background:rgba(49,94,255,.1);color:#1B3BC4}
.cs{flex:none;align-self:flex-start;font-size:10.5px;font-weight:700;border-radius:6px;padding:2px 8px;white-space:nowrap}.cs.ovd{background:rgba(229,80,47,.14);color:#B63514}.cs.prog{background:rgba(49,94,255,.1);color:#1B3BC4}.cs.open{background:rgba(255,170,60,.18);color:#A5600A}.cs.done{background:rgba(0,200,232,.14);color:#007E94}
.su-r{margin-bottom:10px}.su-r label{display:flex;justify-content:space-between;gap:10px;font-size:13px;font-weight:600;margin-bottom:2px}.su-r output{color:var(--blue);font-variant-numeric:tabular-nums;white-space:nowrap}
.su-ins{margin:10px 0 0;border-radius:12px;padding:10px 14px;background:#F3F6FF;border-left:4px solid var(--cyan);font-size:13.5px;line-height:1.5}
.su-ul{margin:6px 0 10px;padding-left:18px;font-size:13.5px;line-height:1.55;color:var(--ink)}.su-ul li{margin-bottom:4px}
.su-lgd{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:var(--mut);margin:6px 0}.su-lgd i{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:5px}
.su-qd{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px}
.su-cs3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.su-cs3 p{margin:0;font-size:13.5px;line-height:1.5;color:var(--mut)}
.supane>.su-ft{font-size:12px;color:var(--mut);margin:6px 0 0;text-align:center}
@media(max-width:1020px){.su-2,.su-2e{grid-template-columns:minmax(0,1fr)}.su-stick{position:static}.su-k8{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.dbd{display:none}dialog.wide .db{padding:0 14px 18px}.su-tabs{margin:0 -14px 12px;padding-inline:14px}.su-g3,.su-cs3{grid-template-columns:minmax(0,1fr)}.su-g3{grid-template-columns:repeat(3,minmax(0,1fr))}.su-g3 .su-k b{font-size:17px}.su-p{padding:14px}.su-dn{grid-template-columns:1fr}.su-br{grid-template-columns:minmax(70px,110px) 1fr 54px}.su-cards{grid-template-columns:1fr}.su-hmt{min-width:560px}.su-t{min-width:440px}.su-seg{display:flex;width:100%}.su-seg button{flex:1}}
@media(prefers-reduced-motion:reduce){.su-sc{transition:none}.su-sc:hover{transform:none}}
.su-p>.su-f{margin-bottom:10px}
.su-sw #kj svg{min-width:0}.su-sw svg{min-width:360px}
.supane svg.su-ring{width:84px;flex:none}
/* Ask Marta AI */
.am-av{flex:none;display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-size:11px;font-weight:800;letter-spacing:.02em}
.am-fab{position:fixed;z-index:40;right:max(16px,env(safe-area-inset-right,0px));bottom:max(16px,env(safe-area-inset-bottom,0px));display:inline-flex;align-items:center;gap:10px;padding:7px 16px 7px 7px;border:1px solid rgba(16,24,40,.1);border-radius:999px;background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 14px 34px -14px rgba(30,50,140,.55),0 0 0 1px rgba(255,255,255,.8) inset;font:inherit;font-size:14px;font-weight:700;color:var(--ink);cursor:pointer;transition:transform .25s,box-shadow .25s}
.am-fab .am-av{width:40px;height:40px;font-size:13px}.am-fab:hover{transform:translateY(-2px);box-shadow:0 18px 38px -14px rgba(30,50,140,.7)}
.am-fab:focus-visible,.am-panel button:focus-visible,.am-panel input:focus-visible,.am-panel a:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.am-panel{position:fixed;z-index:45;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(max(16px,env(safe-area-inset-bottom,0px)) + 64px);width:min(396px,calc(100vw - 24px));height:min(610px,calc(100dvh - 130px));display:flex;flex-direction:column;overflow:hidden;border-radius:22px;background:var(--bg);border:1px solid rgba(16,24,40,.1);box-shadow:0 40px 90px -24px rgba(10,20,70,.5);opacity:0;transform:translateY(14px) scale(.98);transform-origin:bottom right;transition:opacity .22s,transform .22s cubic-bezier(.2,.7,.2,1)}
.am-panel[hidden]{display:none}.am-panel.open{opacity:1;transform:none}
.am-h{flex:none;display:flex;align-items:center;gap:11px;padding:13px 14px 12px 16px;background:#fff;border-bottom:1px solid var(--line)}
.am-h .am-av{width:38px;height:38px;font-size:12.5px}.am-h div{min-width:0;flex:1}.am-h b{display:block;font-size:15.5px;letter-spacing:-.02em;line-height:1.2}.am-h small{display:block;font-size:12px;color:var(--mut);line-height:1.3}
.am-h button{flex:none;width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:17px;line-height:1;color:var(--ink);cursor:pointer}.am-h button:hover{background:#EEF1F8}
.am-note{flex:none;margin:0;padding:7px 16px;font-size:11.5px;line-height:1.4;color:var(--mut);background:#F3F6FF;border-bottom:1px solid var(--line)}
.am-log{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:14px 14px 6px;display:flex;flex-direction:column;gap:12px;scroll-behavior:auto}
.am-m{display:flex;gap:8px;max-width:100%}.am-m.me{justify-content:flex-end}.am-m .am-av{width:26px;height:26px;font-size:9.5px;margin-top:2px}
.am-m p{margin:0;font-size:14px;line-height:1.5}
.am-m.me p{background:linear-gradient(135deg,var(--blue),#2F7BFF);color:#fff;padding:9px 14px;border-radius:16px 16px 4px 16px;max-width:85%;overflow-wrap:anywhere}
.am-b{min-width:0;background:#fff;border:1px solid var(--line);border-radius:4px 16px 16px 16px;padding:10px 13px;box-shadow:0 6px 16px -12px rgba(30,40,100,.35)}
.am-gos,.am-chs{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.am-go{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:999px;border:1px solid rgba(49,94,255,.3);background:rgba(49,94,255,.08);color:#1B3BC4;font:inherit;font-size:12.5px;font-weight:700;text-decoration:none;cursor:pointer}.am-go:hover{background:rgba(49,94,255,.14)}
.am-ch{min-height:32px;padding:6px 12px;border-radius:12px;border:1px solid var(--line);background:#fff;font:inherit;font-size:12.5px;font-weight:600;color:var(--ink);text-align:left;line-height:1.3;cursor:pointer;transition:border-color .2s,background .2s}.am-ch:hover{border-color:var(--blue);background:#F3F6FF}
.am-dots{display:flex;gap:4px;align-items:center;padding:13px 14px}.am-dots i{width:6px;height:6px;border-radius:50%;background:#9AA5B8;animation:amd 1s infinite ease-in-out}.am-dots i:nth-child(2){animation-delay:.15s}.am-dots i:nth-child(3){animation-delay:.3s}@keyframes amd{0%,80%,100%{opacity:.35;transform:none}40%{opacity:1;transform:translateY(-3px)}}
.am-f{flex:none;display:flex;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px)*0);background:#fff;border-top:1px solid var(--line)}
.am-f input{flex:1;min-width:0;border:1px solid rgba(16,24,40,.18);border-radius:12px;padding:0 14px;min-height:44px;font:inherit;font-size:16px;background:var(--bg);color:var(--ink)}
.am-f button{flex:none;width:44px;min-height:44px;border:0;border-radius:12px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;cursor:pointer;display:grid;place-items:center}.am-f button:hover{filter:brightness(1.06)}
.am-f svg{width:19px;height:19px}
@media(max-width:560px){.am-fl{display:none}.am-fab{padding:5px}.am-panel{right:8px;left:8px;width:auto;bottom:calc(max(16px,env(safe-area-inset-bottom,0px)) + 62px);height:min(76dvh,calc(100dvh - 100px))}}
@media(prefers-reduced-motion:reduce){.am-panel,.am-fab{transition:none}.am-dots i{animation:none}}
/* Certifications & technology ecosystem */
.cx{margin-top:34px;display:grid;gap:18px}
.cx-pmp{display:grid;grid-template-columns:auto 1fr;gap:26px;align-items:center;border-radius:24px;padding:28px 30px}
.cx-badge{display:block;width:180px;height:auto;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 10px 22px rgba(40,20,110,.22))}

.cx-pmp h3{margin:0 0 4px;font-size:clamp(22px,2.4vw,30px);letter-spacing:-.035em;line-height:1.15;font-weight:800}.cx-pmp p{margin:0;color:var(--mut);font-size:15.5px}.cx-pmp .eb{margin-bottom:10px}
.cx-prog{display:inline-flex;align-items:center;gap:8px;margin-top:14px!important;font-size:13px!important;padding:6px 12px;border-radius:999px;background:#fff;border:1px solid var(--line)}.cx-prog i{width:8px;height:8px;border-radius:50%;background:#E8A33A}
.cx-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.cx-ai{grid-column:1/-1}
.cx-g{border-radius:22px;padding:22px}.cx-g h4{margin:0 0 4px;font-size:15px;letter-spacing:-.01em}.cx-g .cx-s{margin:0 0 14px;font-size:12.5px;color:var(--mut);line-height:1.4}
.cx-l{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.cx-ai .cx-l{gap:14px}
.cx-t{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:106px;padding:14px 10px 12px;border-radius:14px;background:#fff;border:1px solid var(--line);text-align:center;transition:border-color .2s,transform .2s,box-shadow .2s}.cx-t:hover{border-color:rgba(49,94,255,.35);transform:translateY(-2px);box-shadow:0 8px 22px rgba(30,60,160,.08)}.cx-lg{display:flex;align-items:center;justify-content:center;width:100%;height:46px}.cx-lg img{display:block;max-width:84%;max-height:100%;width:auto;height:auto;object-fit:contain}.cx-wide .cx-lg img{max-width:94%}.cx-n{font-size:12.5px;font-weight:700;letter-spacing:-.01em;color:#1a2238;line-height:1.25}.cx-txt{min-height:96px}.cx-txt .cx-n{font-size:15px}.cx-ai .cx-t{min-height:128px}.cx-ai .cx-lg{height:62px}.cx-ai .cx-n{font-size:14px}
.cx-f{margin:0;font-size:12.5px;color:var(--mut);line-height:1.5;max-width:60em}
@media(max-width:1020px){.cx-groups{grid-template-columns:1fr}}
@media(max-width:700px){.cx-pmp{grid-template-columns:1fr;padding:22px;gap:18px}.cx-badge{width:150px}.cx-groups{grid-template-columns:1fr}.cx-l{grid-template-columns:1fr 1fr}.cx-ai .cx-l{grid-template-columns:1fr}.cx-ai .cx-t{min-height:104px}.cx-ai .cx-lg{height:46px}}
