:root{--blue:#3b82f6;--blue-2:#2563eb;--cyan:#06b6d4;--navy:#1e293b;--light:#f3f4f6;--white:#fff;--bg:#0a0a0a;--bg-2:#0c0f14;--surface:#11151d;--surface-2:#161c28;--surface-3:#1b2330;--line:#ffffff12;--line-2:#ffffff1f;--line-strong:#ffffff2e;--ink:#fff;--ink-2:#c3c8d0;--ink-3:#8b919c;--ink-4:#5e646e;--accent:#3b82f6;--accent-2:#2563eb;--accent-3:#06b6d4;--accent-soft:#3b82f624;--maxw:1200px;--r-sm:10px;--r:16px;--r-lg:24px;--r-xl:32px;--font-display:"Plus Jakarta Sans", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--ease:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font-display);-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}img{max-width:100%;display:block}::selection{background:var(--accent);color:#fff}html{scrollbar-width:thin;scrollbar-color:#3b82f666 var(--bg)}html::-webkit-scrollbar{width:8px}html::-webkit-scrollbar-track{background:var(--bg)}html::-webkit-scrollbar-thumb{background:#3b82f659;border:1px solid #3b82f626;border-radius:999px;transition:background .2s}html::-webkit-scrollbar-thumb:hover{background:#3b82f699}.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 28px}.section{padding:120px 0;position:relative}.eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);align-items:center;gap:10px;font-size:12.5px;display:inline-flex}.eyebrow:before{content:"";background:var(--accent);opacity:.6;width:22px;height:1px}.h-sec{letter-spacing:-.02em;text-wrap:balance;margin:18px 0 0;font-size:clamp(32px,4vw,52px);font-weight:800;line-height:1.05}.sub-sec{color:var(--ink-3);text-wrap:pretty;max-width:560px;margin-top:18px;font-size:18px}.sec-head{margin-bottom:64px}.sec-head.center{text-align:center}.sec-head.center .sub-sec{margin-left:auto;margin-right:auto}.sec-head.center .eyebrow:before{display:none}.grad-text{background:linear-gradient(100deg, var(--accent) 0%, var(--accent-3) 100%);color:#0000;-webkit-background-clip:text;background-clip:text}.btn{transition:transform .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease), border-color .25s var(--ease);white-space:nowrap;border-radius:999px;align-items:center;gap:10px;padding:14px 26px;font-size:15.5px;font-weight:600;display:inline-flex}.btn svg{width:17px;height:17px}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{transform:translateY(-2px)}.btn-ghost{border:1px solid var(--line-2);color:var(--ink);background:#ffffff05}.btn-ghost:hover{border-color:var(--line-strong);background:#ffffff0d;transform:translateY(-2px)}.btn-lg{padding:17px 32px;font-size:16.5px}.bg-grid{pointer-events:none;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 60% at 50% 40%,#000 30%,#0000 75%);mask-image:radial-gradient(80% 60% at 50% 40%,#000 30%,#0000 75%)}.glow{filter:blur(110px);pointer-events:none;opacity:.5;border-radius:50%;position:absolute}.nav{z-index:200;transition:background .3s var(--ease), border-color .3s var(--ease), backdrop-filter .3s;border-bottom:1px solid #0000;position:fixed;top:0;left:0;right:0}.nav.menu-open{background:var(--bg);border-bottom-color:var(--line)}.nav.scrolled{-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--line);background:#0a0a0ae6}.nav-inner{justify-content:space-between;align-items:center;height:76px;display:flex}.brand{align-items:center;gap:11px;display:flex}.brand .iso{width:30px;height:30px;color:var(--accent)}.brand .word{letter-spacing:-.01em;font-size:21px;font-weight:800}.brand .word b{color:var(--accent);font-weight:800}.nav-links{align-items:center;gap:6px;display:flex}.nav-links a{color:var(--ink-2);border-radius:999px;padding:9px 15px;font-size:15px;font-weight:500;transition:color .2s,background .2s}.nav-links a:hover{color:var(--ink);background:#ffffff0d}.nav-cta{align-items:center;gap:12px;display:flex}.lang-toggle{border:1px solid var(--line-2);width:42px;height:38px;color:var(--ink);font-family:var(--font-mono);letter-spacing:0;transition:background .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease), transform .2s var(--ease);background:#ffffff09;border-radius:999px;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:inline-flex}.lang-toggle:hover{background:var(--accent);border-color:var(--accent);color:#fff;transform:translateY(-1px)}.lang-toggle:focus-visible{box-shadow:0 0 0 3px var(--accent-soft);outline:none}.nav-burger{border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;display:none}.nav-burger svg{color:#fff;width:20px;height:20px}.hamburger{cursor:pointer;border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;display:none}.hamburger input{display:none}.hamburger svg{width:34px;height:34px;transition:transform .5s cubic-bezier(.4,0,.2,1)}.hamburger .line{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2px;transition:stroke-dasharray .5s cubic-bezier(.4,0,.2,1),stroke-dashoffset .5s cubic-bezier(.4,0,.2,1)}.hamburger .line-top-bottom{stroke-dasharray:12 63}.hamburger input:checked+svg{transform:rotate(-45deg)}.hamburger input:checked+svg .line-top-bottom{stroke-dasharray:20 300;stroke-dashoffset:-32.42px}.mobile-menu{z-index:150;background:radial-gradient(ellipse 60% 30% at 50% 100%, #06b6d40d, transparent 60%), var(--bg);visibility:hidden;flex-direction:column;padding-top:76px;transition:transform .5s cubic-bezier(.4,0,.2,1),visibility 0s .5s;display:flex;position:fixed;inset:0;overflow:hidden;transform:translateY(-100%)}.mobile-menu.is-open{visibility:visible;transition:transform .5s cubic-bezier(.4,0,.2,1),visibility;transform:translateY(0)}.mobile-menu:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:56px 56px;position:absolute;inset:76px 0 0;-webkit-mask-image:radial-gradient(80% 60% at 50% 40%,#000 20%,#0000 80%);mask-image:radial-gradient(80% 60% at 50% 40%,#000 20%,#0000 80%)}.mobile-menu.is-open{visibility:visible;transform:translateY(0)}.mobile-menu-links{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:18px;display:flex}.mobile-menu-link{letter-spacing:-.01em;color:var(--ink);opacity:0;border-radius:12px;padding:10px 18px;font-size:26px;font-weight:700;transition:color .2s,background .2s,opacity .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1);transform:translateY(16px)}.mobile-menu.is-open .mobile-menu-link{opacity:1;transform:translateY(0)}.mobile-menu.is-open .mobile-menu-link:first-child{transition-delay:.2s}.mobile-menu.is-open .mobile-menu-link:nth-child(2){transition-delay:.28s}.mobile-menu.is-open .mobile-menu-link:nth-child(3){transition-delay:.36s}.mobile-menu.is-open .mobile-menu-link:nth-child(4){transition-delay:.44s}.mobile-menu.is-open .mobile-menu-link:nth-child(5){transition-delay:.52s}.mobile-menu-link:hover{color:var(--accent)}.mobile-menu-foot{z-index:1;opacity:0;flex-direction:column;align-items:center;gap:30px;padding:0 28px 40px;transition:opacity .5s cubic-bezier(.4,0,.2,1) .6s,transform .5s cubic-bezier(.4,0,.2,1) .6s;display:flex;position:relative;transform:translateY(16px)}.mobile-menu.is-open .mobile-menu-foot{opacity:1;transform:translateY(0)}.mobile-menu-cta{background:linear-gradient(135deg,#3b82f6d9,#2563ebd9);border:1px solid #ffffff14;padding:14px 36px;box-shadow:0 8px 32px -8px #3b82f659,inset 0 1px #ffffff1f}.mobile-lang-toggle{width:58px;height:42px}.mobile-menu-cloud{width:110px;height:110px;color:var(--accent);opacity:.14;filter:drop-shadow(0 0 24px #3b82f640)}.hero{padding-top:76px;position:relative;overflow:hidden}.hero .glow-a{background:var(--accent);opacity:.22;width:620px;height:620px;top:-180px;left:50%;transform:translate(-50%)}.hero-title{letter-spacing:-.03em;text-wrap:balance;font-size:clamp(40px,6.4vw,84px);font-weight:800;line-height:1.02}.hero-sub{color:var(--ink-2);max-width:540px;font-size:clamp(17px,1.4vw,20px);line-height:1.6}.hero-actions{flex-wrap:wrap;gap:14px;display:flex}.hero-A{text-align:center;padding-block:90px 110px}.hero-A .iso-big{width:132px;height:132px;color:var(--accent);filter:drop-shadow(0 18px 50px var(--accent-soft));animation:float 6s var(--ease) infinite;margin:0 auto 30px}.hero-A .pill{margin-bottom:26px}.hero-A .hero-sub{margin:26px auto 0}.hero-A .hero-actions{justify-content:center;margin-top:38px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}.hero-B .hero-grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:30px 60px;padding-block:70px 96px;display:grid}.hero-B .hero-title-wrap{grid-area:1/1}.hero-B .cloud-stage{grid-area:1/2/3;align-self:center}.hero-B .hero-bottom-wrap{grid-area:2/1}.hero-B .hero-actions{margin-top:36px}.hero-B .hero-sub{margin-top:24px}.hero-C{padding-block:84px 96px}.hero-C .hero-title{max-width:14ch;font-size:clamp(46px,8.5vw,116px)}.hero-C .hero-sub{margin-top:28px}.hero-C .hero-actions{margin-top:36px}.hero-C .pill{margin-bottom:28px}.hero-C .hero-foot{border-top:1px solid var(--line);flex-wrap:wrap;gap:48px;margin-top:64px;padding-top:36px;display:flex}.hero-stats{flex-wrap:wrap;gap:44px;margin-top:36px;display:flex}.hero-stats .stat .n{letter-spacing:-.02em;font-size:30px;font-weight:800}.hero-stats .stat .n .grad-text{display:inline}.hero-stats .stat .l{color:var(--ink-3);margin-top:2px;font-size:13.5px}.cloud-stage{aspect-ratio:1;justify-content:center;align-items:center;width:100%;display:flex;position:relative}.cloud-stage .ring{border:1px solid var(--line-2);border-radius:50%;position:absolute}.cloud-stage .ring.r1{inset:8%}.cloud-stage .ring.r2{border-color:var(--line);inset:22%}.cloud-stage .ring.r3{border-style:dashed;border-color:#ffffff14;animation:40s linear infinite spin;inset:36%}@keyframes spin{to{transform:rotate(360deg)}}.cloud-stage .iso-mid{width:44%;color:var(--accent);z-index:2;filter:drop-shadow(0 20px 50px var(--accent-soft));animation:float 6s var(--ease) infinite;position:relative}.cloud-stage .chip{z-index:3;border:1px solid var(--line-2);color:var(--ink-2);font-size:12.5px;font-family:var(--font-mono);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#11151de6;border-radius:12px;align-items:center;gap:8px;padding:9px 13px;display:flex;position:absolute;box-shadow:0 14px 40px -16px #000c}.cloud-stage .chip svg{width:15px;height:15px;color:var(--accent-3)}.cloud-stage .c1{animation:float 5s var(--ease) infinite;top:12%;left:-2%}.cloud-stage .c2{animation:float 7s var(--ease) infinite .4s;bottom:16%;right:-4%}.cloud-stage .c3{animation:float 6.5s var(--ease) infinite .8s;bottom:4%;left:8%}.trust{background:var(--bg);padding:36px 0}.trust .wrap{padding:0}.trust-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.trust-row .lab{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);margin-right:8px;font-size:12px}.tech-tag{border:1px solid var(--line);color:var(--ink-2);background:var(--surface);border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;display:inline-flex}.tech-tag .d{background:var(--accent);border-radius:50%;width:6px;height:6px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);transition:transform .4s var(--ease), border-color .4s var(--ease), background .4s var(--ease)}.card:hover{border-color:var(--line-strong);background:var(--surface-2);transform:translateY(-4px)}.svc-ico{background:var(--accent-soft);width:52px;height:52px;color:var(--accent);border:1px solid #3b82f640;border-radius:14px;justify-content:center;align-items:center;display:flex}.svc-ico svg{width:25px;height:25px}.card h3{letter-spacing:-.01em;font-size:21px;font-weight:700}.card p{color:var(--ink-3);margin-top:10px;font-size:15.5px}.svc-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.svc-grid .card{padding:32px;position:relative;overflow:hidden}.svc-grid .card>:not(.ghost-cloud){z-index:1;position:relative}.svc-grid .card .svc-ico{margin-bottom:22px}.svc-tags{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.svc-tags span{color:var(--ink-3);border:1px solid var(--line);border-radius:999px;padding:5px 11px;font-size:12.5px}.svc-list{border-top:1px solid var(--line);flex-direction:column;gap:0;display:flex}.svc-row{border-bottom:1px solid var(--line);transition:padding .35s var(--ease), background .35s var(--ease);grid-template-columns:80px 1fr auto;align-items:center;gap:32px;padding:34px 12px;display:grid}.svc-row:hover{background:linear-gradient(90deg, var(--surface), transparent);padding-left:26px;padding-right:0}.svc-row .num{font-family:var(--font-mono);color:var(--accent);font-size:15px}.svc-row .body h3{font-size:26px}.svc-row .body p{max-width:620px}.svc-row .arrow{border:1px solid var(--line-2);width:46px;height:46px;color:var(--ink-2);transition:all .3s var(--ease);border-radius:50%;justify-content:center;align-items:center;display:flex}.svc-row:hover .arrow{background:var(--accent);border-color:var(--accent);color:#fff;transform:translate(4px,-4px)}.svc-row .arrow svg{width:18px;height:18px}.svc-bento{grid-template-columns:repeat(4,1fr);grid-auto-rows:200px;gap:18px;display:grid}.svc-bento .card{flex-direction:column;justify-content:space-between;padding:28px;display:flex;position:relative;overflow:hidden}.svc-bento .b-wide{grid-column:span 2}.svc-bento .b-tall{grid-row:span 2}.svc-bento .card h3{font-size:20px}.svc-bento .ghost-cloud{width:160px;color:var(--accent);opacity:.08;position:absolute;bottom:-30px;right:-20px}.ghost-cloud{width:140px;color:var(--accent);opacity:.06;z-index:0;pointer-events:none;position:absolute;bottom:-30px;right:-26px}.saas{background:var(--bg-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:96px;position:relative;overflow:hidden}.product-switcher{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:-24px;margin-bottom:56px;display:flex}.product-tab{border:1px solid var(--line-2);background:var(--surface);color:var(--ink-2);transition:all .25s var(--ease);border-radius:999px;align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:600;display:inline-flex}.product-tab svg{width:16px;height:16px}.product-tab:hover:not(.active){border-color:var(--line-strong);background:var(--surface-2)}.product-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.product-row{grid-template-columns:.8fr 1.3fr;align-items:center;gap:48px;display:grid}.product-info{max-width:480px}.saas-tags{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.saas-tag{border:1px solid var(--line);color:var(--ink-2);background:var(--surface);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:13.5px;display:inline-flex}.saas-tag svg{width:15px;height:15px;color:var(--accent)}.saas-carousel{padding:0 48px;position:relative}.saas-carousel-frame{border-radius:var(--r-lg);aspect-ratio:1576/855;width:100%;transition:border-color .25s var(--ease), transform .25s var(--ease), box-shadow .25s var(--ease);background:0 0;border:1px solid #ffffff1c;padding:0;position:relative;overflow:hidden;box-shadow:0 40px 90px -40px #000000e6}.saas-carousel-frame:hover{border-color:#3b82f68c;transform:translateY(-2px);box-shadow:0 44px 100px -42px #000000e6,0 0 0 1px #3b82f624}.saas-carousel-frame:focus-visible{outline:none;box-shadow:0 0 0 3px #3b82f659,0 40px 90px -40px #000000e6}.saas-carousel-frame img{object-fit:contain;border-radius:inherit;background:0 0;width:100%;height:100%;display:block}.saas-carousel-zoom{border:1px solid var(--line-2);min-height:34px;color:var(--ink);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;transition:opacity .2s var(--ease), transform .2s var(--ease);background:#0a0a0ac2;border-radius:999px;justify-content:center;align-items:center;padding:8px 13px;font-size:12.5px;font-weight:700;display:inline-flex;position:absolute;bottom:26px;right:26px;transform:translateY(8px)}.saas-carousel-frame:hover .saas-carousel-zoom,.saas-carousel-frame:focus-visible .saas-carousel-zoom{opacity:1;transform:none}.saas-carousel-frame.placeholder{color:var(--ink-4);font-family:var(--font-mono);border-style:dashed;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:13px;display:flex}.saas-carousel-frame.placeholder .ico{width:36px;height:36px;color:var(--accent);opacity:.5}.saas-carousel-arrow{z-index:2;border:1px solid var(--line-2);width:44px;height:44px;color:var(--ink-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .25s var(--ease);background:#11151dd9;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.saas-carousel-arrow:hover{background:var(--accent);border-color:var(--accent);color:#fff}.saas-carousel-arrow svg{width:18px;height:18px}.saas-carousel-arrow.left{left:2px}.saas-carousel-arrow.right{right:2px}.saas-carousel-dots{justify-content:center;gap:8px;margin-top:18px;display:flex}.saas-carousel-dots .dot{background:var(--line-strong);width:8px;height:8px;transition:all .25s var(--ease);border:none;border-radius:50%}.saas-carousel-dots .dot.active{background:var(--accent);border-radius:999px;width:22px}.product-lightbox{z-index:500;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#03060ceb;justify-content:center;align-items:center;padding:34px;display:flex;position:fixed;inset:0}.product-lightbox-stage{flex-direction:column;gap:14px;width:min(1180px,100%);max-height:calc(100vh - 68px);display:flex}.product-lightbox-stage img{object-fit:contain;border-radius:var(--r);background:#f8fafc;border:1px solid #ffffff24;width:100%;max-height:calc(100vh - 120px);box-shadow:0 30px 100px -30px #000000f2}.product-lightbox-stage figcaption{color:var(--ink-2);text-align:center;font-size:14px}.product-lightbox-close,.product-lightbox-arrow{z-index:501;border:1px solid var(--line-2);width:46px;height:46px;color:var(--ink);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .2s var(--ease), border-color .2s var(--ease), transform .2s var(--ease);background:#11151dd1;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed}.product-lightbox-close:hover,.product-lightbox-arrow:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-1px)}.product-lightbox-close svg,.product-lightbox-arrow svg{width:19px;height:19px}.product-lightbox-close{top:24px;right:24px}.product-lightbox-arrow{top:50%;transform:translateY(-50%)}.product-lightbox-arrow:hover{transform:translateY(calc(-50% - 1px))}.product-lightbox-arrow.left{left:24px}.product-lightbox-arrow.right{right:24px}.saas-B{text-align:center;flex-direction:column;align-items:center;display:flex}.saas-B .spot{border-radius:var(--r-xl);border:1px solid var(--line-2);background:linear-gradient(180deg, var(--surface-2), var(--surface));width:100%;max-width:900px;margin-top:44px;padding:8px}.saas-stats-3{grid-template-columns:repeat(3,1fr);gap:16px;width:100%;margin-top:40px;display:grid}.saas-stats-3 .card{text-align:left;padding:28px}.saas-stats-3 .n{letter-spacing:-.02em;font-size:38px;font-weight:800}.saas-stats-3 .l{color:var(--ink-3);margin-top:4px;font-size:14.5px}.saas-C-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:30px;display:flex}.saas-cols{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:50px;display:grid}.saas-cols .card{padding:30px}.saas-cols .svc-ico{margin-bottom:20px}.about-grid{grid-template-columns:1fr 1fr;align-items:center;gap:64px;display:grid}.value-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:8px;display:grid}.value{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);padding:24px}.value .vi{color:var(--accent);width:24px;height:24px;margin-bottom:14px}.value h4{font-size:17px;font-weight:700}.value p{color:var(--ink-3);margin-top:6px;font-size:14px}.proj-carousel{position:relative}.proj-track{scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab;overscroll-behavior-x:contain;gap:22px;padding-bottom:8px;display:flex;overflow:auto hidden}.proj-track::-webkit-scrollbar{display:none}.proj-track.dragging{cursor:grabbing;scroll-snap-type:none;-webkit-user-select:none;user-select:none}.proj-track .proj{scroll-snap-align:none;flex:0 0 calc(50% - 11px)}.proj-track .proj.snap{scroll-snap-align:start}@media (width<=700px){.proj-track .proj{flex:0 0 100%}}.proj-carousel-nav{justify-content:space-between;align-items:center;gap:10px;margin-top:28px;display:flex}.proj-dots{gap:8px;display:flex}.proj-dots .dot{background:var(--line-strong);width:8px;height:8px;transition:all .25s var(--ease);cursor:pointer;border:none;border-radius:50%;padding:0}.proj-dots .dot.active{background:var(--accent);border-radius:999px;width:22px}.proj-carousel-arrows{gap:10px;display:flex}.proj-arrow{border:1px solid var(--line-2);background:var(--surface);width:46px;height:46px;color:var(--ink-2);transition:all .25s var(--ease);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.proj-arrow:hover{background:var(--accent);border-color:var(--accent);color:#fff}.proj-arrow svg{width:18px;height:18px}.proj{overflow:hidden}.proj .thumb{aspect-ratio:1900/965;border-bottom:1px solid var(--line);background:radial-gradient(120% 100% at 50% 100%, var(--accent-soft), transparent 65%), var(--surface-2);position:relative;overflow:hidden}.proj .thumb-button{width:100%;color:inherit;cursor:zoom-in;text-align:left;display:block}.proj .thumb-button:focus-visible{outline:none;box-shadow:inset 0 0 0 3px #3b82f67a}.proj .thumb:after{content:"";pointer-events:none;background:linear-gradient(#0a0a0a47,#0000 42%),linear-gradient(#0000 50%,#0a0a0a33);position:absolute;inset:0}.proj .thumb .tag-cat{z-index:1;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);border:1px solid var(--line-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a0a0ab3;border-radius:999px;padding:6px 12px;font-size:11.5px;position:absolute;top:16px;left:16px}.proj-image{object-fit:cover;object-position:top center;width:100%;height:100%;transition:transform .55s var(--ease), filter .55s var(--ease)}.proj:hover .proj-image{filter:saturate(1.08);transform:scale(1.035)}.proj .thumb-placeholder{color:var(--ink-4);font-family:var(--font-mono);-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:12px;display:flex;position:absolute;inset:0}.proj .thumb-placeholder .ico{width:34px;height:34px;color:var(--accent);opacity:.55}.proj .pbody{flex-direction:column;gap:12px;padding:26px;display:flex}.proj .pbody h3{font-size:22px;font-weight:700}.proj .pbody p{color:var(--ink-3);font-size:15px}.proj-case-link{color:var(--accent);align-items:center;gap:6px;margin-top:4px;font-size:14px;font-weight:600;display:inline-flex}.proj-case-link svg{width:15px;height:15px}.proj-case-link:hover{color:var(--accent-3)}.project-lightbox{z-index:500;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#03060ceb;justify-content:center;align-items:center;padding:34px;display:flex;position:fixed;inset:0}.project-lightbox-stage{flex-direction:column;gap:14px;width:min(1280px,100%);max-height:calc(100vh - 68px);display:flex}.project-lightbox-stage img{object-fit:contain;border-radius:var(--r);background:#f8fafc;border:1px solid #ffffff24;width:100%;max-height:calc(100vh - 120px);box-shadow:0 30px 100px -30px #000000f2}.project-lightbox-stage figcaption{color:var(--ink-2);text-align:center;font-size:14px;font-weight:600}.project-lightbox-close,.project-lightbox-arrow{z-index:501;border:1px solid var(--line-2);width:46px;height:46px;color:var(--ink);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .2s var(--ease), border-color .2s var(--ease), transform .2s var(--ease);background:#11151dd1;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed}.project-lightbox-close:hover,.project-lightbox-arrow:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-1px)}.project-lightbox-close svg,.project-lightbox-arrow svg{width:19px;height:19px}.project-lightbox-close{top:24px;right:24px}.project-lightbox-arrow{top:50%;transform:translateY(-50%)}.project-lightbox-arrow:hover{transform:translateY(calc(-50% - 1px))}.project-lightbox-arrow.left{left:24px}.project-lightbox-arrow.right{right:24px}.test-marquee-wrap{flex-direction:column;gap:16px;margin-top:64px;display:flex;-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.test-marquee-wrap .marquee{padding:6px 0}.test-marquee-wrap .test{flex:none;width:min(280px,82vw)}.test{flex-direction:column;padding:22px;display:flex}.test.card:hover{transform:translateY(-4px)}.test .who{align-items:center;gap:12px;display:flex}.test .who .av{background:linear-gradient(135deg, var(--surface-3), var(--navy));width:38px;height:38px;color:var(--ink-2);border:1px solid var(--line-2);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.test .who .nm{font-size:14.5px;font-weight:600}.test .who .rl{color:var(--ink-4);font-size:12.5px}.test .quote{color:var(--ink-2);margin-top:14px;font-size:14.5px;line-height:1.55}#contacto{padding-bottom:48px}.contact-grid{grid-template-columns:.9fr 1.1fr;gap:56px;display:grid}.contact-info .ci-item{border-bottom:1px solid var(--line);align-items:flex-start;gap:16px;padding:20px 0;display:flex}.contact-info .ci-item:first-of-type{border-top:1px solid var(--line)}.contact-info .ci-ico{background:var(--surface);border:1px solid var(--line-2);width:46px;height:46px;color:var(--accent);border-radius:12px;flex:none;justify-content:center;align-items:center;display:flex}.contact-info .ci-ico svg{width:20px;height:20px}.contact-info .ci-lab{font-size:12.5px;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-4)}.contact-info .ci-val{margin-top:3px;font-size:16.5px;font-weight:600}.form{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:36px}.field{margin-bottom:18px}.field label{color:var(--ink-2);margin-bottom:8px;font-size:13.5px;font-weight:500;display:block}.field input,.field textarea,.field select{background:var(--bg);border:1px solid var(--line-2);width:100%;color:var(--ink);border-radius:12px;padding:13px 16px;font-family:inherit;font-size:15px;transition:border-color .2s,box-shadow .2s}.field input::placeholder,.field textarea::placeholder{color:var(--ink-4)}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.field textarea{resize:vertical;min-height:120px}.field-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-success{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:360px;padding:40px 20px;display:flex}.form-success .ok{background:var(--accent-soft);width:64px;height:64px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;display:flex}.form-success .ok svg{width:30px;height:30px}.cta-band{padding-top:48px;position:relative;overflow:hidden}.cta-card{border-radius:var(--r-xl);border:1px solid var(--line-2);background:radial-gradient(120% 140% at 50% -20%, #3b82f638, transparent 60%), var(--surface);text-align:center;padding:72px 48px;position:relative;overflow:hidden}.cta-card .iso-bg{width:300px;color:var(--accent);opacity:.06;position:absolute;top:50%;right:-40px;transform:translateY(-50%)}.footer{border-top:1px solid var(--line);background:var(--bg-2);padding:72px 0 36px}.foot-grid{grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;display:grid}.foot-brand p{color:var(--ink-3);max-width:320px;margin-top:18px;font-size:14.5px}.foot-soc{gap:10px;margin-top:22px;display:flex}.foot-soc a{border:1px solid var(--line-2);width:40px;height:40px;color:var(--ink-2);transition:all .25s var(--ease);border-radius:10px;justify-content:center;align-items:center;display:flex}.foot-soc a:hover{color:#fff;border-color:var(--accent);background:var(--accent)}.foot-soc a svg{width:18px;height:18px}.foot-col h5{font-size:13px;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-4);margin-bottom:18px}.foot-col a{color:var(--ink-2);padding:6px 0;font-size:15px;transition:color .2s;display:block}.foot-col a:hover{color:var(--accent)}.foot-bottom{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:56px;padding-top:28px;display:flex}.foot-bottom p{color:var(--ink-4);font-size:13.5px}.foot-email{color:var(--ink-2);border:1px solid var(--line-2);transition:all .2s var(--ease);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:13.5px;font-weight:600;display:inline-flex}.foot-email svg{width:15px;height:15px;color:var(--accent)}.foot-email:hover{border-color:var(--accent);color:var(--ink)}.back-to-top{z-index:90;border:1px solid var(--line-2);background:var(--surface);width:46px;height:46px;color:var(--ink-2);opacity:0;pointer-events:none;transition:opacity .3s var(--ease), transform .3s var(--ease), background .25s var(--ease), border-color .25s var(--ease);border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:24px;right:24px;transform:translateY(12px)scale(.9);box-shadow:0 12px 30px -10px #0009}.back-to-top.visible{opacity:1;pointer-events:auto;transform:none}.back-to-top:hover{background:var(--accent);border-color:var(--accent);color:#fff}.back-to-top svg{width:19px;height:19px}@media (width<=600px){.back-to-top{width:42px;height:42px;bottom:16px;right:16px}}.reveal{transition:opacity .7s var(--ease), transform .7s var(--ease)}html.anim .reveal{opacity:0;transform:translateY(26px)}html.anim .reveal.in{opacity:1;transform:none}html.reveal-all .reveal{opacity:1!important;transition:none!important;transform:none!important}.reveal.d1{transition-delay:80ms}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}.reveal.d4{transition-delay:.32s}.reveal.d5{transition-delay:.4s}@media (prefers-reduced-motion:reduce){html.anim .reveal,.reveal{opacity:1;transition:none;transform:none}.iso-big,.iso-mid,.ring.r3,.chip{animation:none!important}html{scroll-behavior:auto}}@media (width<=980px){.nav-links{display:none}.nav-burger,.hamburger{display:flex}.nav-cta-desktop{display:none}.hero-B .hero-grid{grid-template-columns:1fr;gap:48px}.hero-B .hero-title-wrap{order:1;grid-area:auto}.hero-B .cloud-stage{order:2;grid-area:auto;align-self:auto;max-width:420px;margin:0 auto}.hero-B .hero-bottom-wrap{order:3;grid-area:auto}.cloud-stage{max-width:420px;margin:0 auto}.svc-grid{grid-template-columns:1fr 1fr}.svc-bento{grid-template-columns:repeat(2,1fr)}.saas-cols,.saas-stats-3{grid-template-columns:1fr}.product-row{grid-template-columns:1fr;gap:36px}.product-info{max-width:none}.saas-carousel{padding:0 48px}.about-grid{grid-template-columns:1fr;gap:44px}.contact-grid{grid-template-columns:1fr;gap:40px}.foot-grid{grid-template-columns:1fr 1fr;gap:32px}}@media (width<=600px){.section{padding:84px 0}.wrap{padding:0 20px}.svc-grid,.svc-bento{grid-template-columns:1fr}.svc-row{grid-template-columns:40px 1fr}.svc-row .arrow{display:none}.field-row,.foot-grid{grid-template-columns:1fr}.cta-card{padding:48px 24px}.hero-stats{gap:28px}.saas-carousel{padding:0 40px}.saas-carousel-arrow{width:36px;height:36px}.saas-carousel-arrow svg{width:15px;height:15px}.saas-carousel-zoom{opacity:1;bottom:16px;right:16px;transform:none}.product-lightbox{padding:18px}.product-lightbox-stage{max-height:calc(100vh - 36px)}.product-lightbox-stage img{border-radius:12px;max-height:calc(100vh - 92px)}.product-lightbox-stage figcaption{font-size:12.5px}.product-lightbox-close,.product-lightbox-arrow{width:40px;height:40px}.product-lightbox-close{top:14px;right:14px}.product-lightbox-arrow.left{left:10px}.product-lightbox-arrow.right{right:10px}.project-lightbox{padding:18px}.project-lightbox-stage{max-height:calc(100vh - 36px)}.project-lightbox-stage img{border-radius:12px;max-height:calc(100vh - 92px)}.project-lightbox-stage figcaption{font-size:12.5px}.project-lightbox-close,.project-lightbox-arrow{width:40px;height:40px}.project-lightbox-close{top:14px;right:14px}.project-lightbox-arrow.left{left:10px}.project-lightbox-arrow.right{right:10px}}.marquee{gap:var(--gap,22px);display:flex;overflow:hidden}.marquee.vertical{flex-direction:column}.marquee-group{justify-content:space-around;gap:var(--gap,22px);animation:marquee var(--duration,40s) linear infinite;flex-shrink:0;display:flex}.marquee.vertical .marquee-group{flex-direction:column;animation-name:marquee-vertical}.marquee-group.reverse{animation-direction:reverse}.marquee.pause-on-hover:hover .marquee-group{animation-play-state:paused}@keyframes marquee{0%{transform:translate(0)}to{transform:translateX(calc(-100% - var(--gap,22px)))}}@keyframes marquee-vertical{0%{transform:translateY(0)}to{transform:translateY(calc(-100% - var(--gap,22px)))}}@media (prefers-reduced-motion:reduce){.marquee-group{animation:none}}.logoloop{--logoloop-gap:32px;--logoloop-logoHeight:28px;--logoloop-fadeColorAuto:#fff;position:relative}.logoloop--vertical{height:100%;display:inline-block}.logoloop--scale-hover{padding-top:calc(var(--logoloop-logoHeight) * .1);padding-bottom:calc(var(--logoloop-logoHeight) * .1)}@media (prefers-color-scheme:dark){.logoloop{--logoloop-fadeColorAuto:#0b0b0b}}.logoloop__track{will-change:transform;-webkit-user-select:none;user-select:none;z-index:0;width:max-content;display:flex;position:relative}.logoloop--vertical .logoloop__track{flex-direction:column;width:100%;height:max-content}.logoloop__list{align-items:center;list-style:none;display:flex}.logoloop--vertical .logoloop__list{flex-direction:column}.logoloop__item{margin-right:var(--logoloop-gap);font-size:var(--logoloop-logoHeight);flex:none;line-height:1}.logoloop--vertical .logoloop__item{margin-right:0;margin-bottom:var(--logoloop-gap)}.logoloop__item:last-child{margin-right:var(--logoloop-gap)}.logoloop--vertical .logoloop__item:last-child{margin-right:0;margin-bottom:var(--logoloop-gap)}.logoloop__node{align-items:center;display:inline-flex}.logoloop__item img{height:var(--logoloop-logoHeight);object-fit:contain;width:auto;image-rendering:-webkit-optimize-contrast;-webkit-user-drag:none;pointer-events:none;transition:transform .3s cubic-bezier(.4,0,.2,1);display:block}.logoloop--scale-hover .logoloop__item{overflow:visible}.logoloop--scale-hover .logoloop__item:hover img,.logoloop--scale-hover .logoloop__item:hover .logoloop__node{transform-origin:50%;transform:scale(1.2)}.logoloop--scale-hover .logoloop__node{transition:transform .3s cubic-bezier(.4,0,.2,1)}.logoloop__link{border-radius:4px;align-items:center;text-decoration:none;transition:opacity .2s;display:inline-flex}.logoloop__link:hover{opacity:.8}.logoloop__link:focus-visible{outline-offset:2px;outline:2px solid}.logoloop--fade:before,.logoloop--fade:after{content:"";pointer-events:none;z-index:10;width:clamp(24px,8%,120px);position:absolute;top:0;bottom:0}.logoloop--fade:before{background:linear-gradient(to right, var(--logoloop-fadeColor,var(--logoloop-fadeColorAuto)) 0%, #0000 100%);left:0}.logoloop--fade:after{background:linear-gradient(to left, var(--logoloop-fadeColor,var(--logoloop-fadeColorAuto)) 0%, #0000 100%);right:0}.logoloop--vertical.logoloop--fade:before,.logoloop--vertical.logoloop--fade:after{width:100%;height:clamp(24px,8%,120px);left:0;right:0}.logoloop--vertical.logoloop--fade:before{background:linear-gradient(to bottom, var(--logoloop-fadeColor,var(--logoloop-fadeColorAuto)) 0%, #0000 100%);top:0;bottom:auto}.logoloop--vertical.logoloop--fade:after{background:linear-gradient(to top, var(--logoloop-fadeColor,var(--logoloop-fadeColorAuto)) 0%, #0000 100%);top:auto;bottom:0}@media (prefers-reduced-motion:reduce){.logoloop__track{transform:translate(0,0)!important}.logoloop__item img,.logoloop__node{transition:none!important}}
