:root{--bg:#f6f5f1;--bg-2:#eeece6;--surface:#fff;--ink:#121216;--ink-2:#3a3a44;--muted:#6b6b78;--line:#12121614;--line-2:#12121624;--accent:#5b4bff;--accent-2:#ff7a59;--accent-3:#19c3a6;--radius:28px;--radius-sm:16px;--shadow:0 1px 2px #1212160a, 0 12px 40px -12px #1212161f;--shadow-lg:0 2px 4px #1212160a, 0 30px 80px -20px #281e7840;--ease:cubic-bezier(.2, .8, .2, 1);--font:"Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:"Unbounded", "Manrope", system-ui, sans-serif}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:96px}body{font-family:var(--font);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.6;overflow-x:hidden}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit;color:inherit}ol,ul{list-style:none}::selection{background:var(--accent);color:#fff}.container{width:min(1200px,100% - 32px);margin-inline:auto}.ico{flex:none;width:1.15em;height:1.15em}.skip-link{z-index:200;background:var(--ink);color:#fff;border-radius:12px;padding:10px 16px;transition:transform .2s;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip-link:focus{transform:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:8px}.progress{z-index:100;background:linear-gradient(90deg,var(--accent),var(--accent-2),var(--accent-3));transform-origin:0;height:3px;transform:scaleX(var(--p,0));position:fixed;inset:0 0 auto}.btn{--mx:0px;--my:0px;cursor:pointer;white-space:nowrap;transform:translate(var(--mx),var(--my));transition:transform .35s var(--ease),background .3s,color .3s,box-shadow .3s;border:0;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:15px 26px;font-size:.98rem;font-weight:700;display:inline-flex}.btn-primary{background:var(--ink);color:#fff;box-shadow:0 10px 30px -10px #12121680}.btn-primary:hover{background:var(--accent);box-shadow:0 14px 34px -10px #5b4bff99}.btn-primary .ico{transition:transform .35s var(--ease)}.btn-primary:hover .ico{transform:translate(2px,-2px)}.btn-ghost{background:var(--surface);border:1px solid var(--line-2)}.btn-ghost:hover{border-color:var(--ink)}.btn-sm{padding:10px 18px;font-size:.9rem}.btn-block{width:100%}.site-header{z-index:50;position:fixed;top:12px;left:0;right:0}.nav-wrap{-webkit-backdrop-filter:blur(16px)saturate(1.5);backdrop-filter:blur(16px)saturate(1.5);border:1px solid var(--line);background:#ffffffa6;border-radius:999px;justify-content:space-between;align-items:center;gap:16px;padding:8px 8px 8px 18px;transition:box-shadow .4s,background .4s;display:flex}.is-scrolled .nav-wrap{box-shadow:var(--shadow);background:#ffffffd9}.logo{font-family:var(--font-display);align-items:center;gap:10px;font-size:1.02rem;font-weight:600;display:flex}.logo-mark{background:conic-gradient(from 200deg,var(--accent),var(--accent-2),var(--accent-3),var(--accent));color:#fff;width:34px;height:34px;transition:transform .6s var(--ease);border-radius:11px;place-items:center;font-size:.9rem;display:grid}.logo:hover .logo-mark{transform:rotate(-12deg)scale(1.06)}.nav-links{gap:2px;display:flex}.nav-links a{color:var(--ink-2);border-radius:999px;padding:8px 14px;font-size:.92rem;font-weight:600;transition:background .25s,color .25s;position:relative}.nav-links a.active,.nav-links a:hover{background:var(--bg-2);color:var(--ink)}.nav-right{align-items:center;gap:10px;display:flex}.menu-toggle{cursor:pointer;background:var(--ink);border:0;border-radius:50%;align-content:center;place-items:center;gap:5px;width:42px;height:42px;display:none}.menu-toggle span{width:16px;height:2px;transition:transform .35s var(--ease);background:#fff;border-radius:2px;display:block}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px)rotate(-45deg)}.mobile-menu{padding-top:8px}.mobile-menu nav{border:1px solid var(--line);box-shadow:var(--shadow);animation:drop .4s var(--ease);background:#fffffff2;border-radius:24px;gap:4px;padding:12px;display:grid}.mobile-menu a{border-radius:14px;padding:12px 16px;font-size:1.05rem;font-weight:700}.mobile-menu a:hover{background:var(--bg-2)}@keyframes drop{0%{opacity:0;transform:translateY(-10px)}}.hero{isolation:isolate;align-items:center;min-height:100svh;padding:140px 0 80px;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:-1;pointer-events:none}.grid-bg,.hero-bg{position:absolute;inset:0}.grid-bg{background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(70% 60% at 50% 40%,#000 20%,#0000 75%);mask-image:radial-gradient(70% 60% at 50% 40%,#000 20%,#0000 75%)}.blob{filter:blur(80px);opacity:.6;will-change:transform;border-radius:50%;position:absolute}.blob-1{background:#cfc9ff;width:560px;height:560px;animation:20s ease-in-out infinite float1;top:-160px;right:-120px}.blob-2{background:#ffd3c6;width:460px;height:460px;animation:24s ease-in-out infinite float2;bottom:-160px;left:-120px}.blob-3{background:#bff2e6;width:340px;height:340px;animation:18s ease-in-out infinite float3;top:40%;left:42%}@keyframes float1{50%{transform:translate(-80px,60px)scale(1.1)}}@keyframes float2{50%{transform:translate(90px,-50px)scale(1.15)}}@keyframes float3{50%{transform:translate(-60px,-70px)scale(.9)}}.hero-grid{grid-template-columns:1.15fr .85fr;gap:56px;display:grid}.badge,.hero-grid{align-items:center}.badge{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:999px;gap:10px;padding:7px 16px 7px 12px;font-size:.86rem;font-weight:700;display:inline-flex}.dot{background:#22c55e;border-radius:50%;width:8px;height:8px;animation:2s infinite pulse}@keyframes pulse{0%{box-shadow:0 0 #22c55e8c}to{box-shadow:0 0 0 10px #22c55e00}}.hero h1{font-family:var(--font-display);letter-spacing:-.035em;text-wrap:balance;margin:26px 0 24px;font-size:calc(clamp(2.3rem,5.6vw,4.8rem));font-weight:600;line-height:1.06}.word{vertical-align:top;margin-bottom:-.1em;padding-bottom:.1em;overflow:hidden}.word,.word>span{display:inline-block}.js .word>span{animation:wordUp 1s var(--ease) forwards;animation-delay:calc(.15s + var(--i) * 80ms);transform:translateY(110%)}@keyframes wordUp{to{transform:none}}.grad{background:linear-gradient(100deg,var(--accent),var(--accent-2) 50%,var(--accent-3),var(--accent));color:#0000;background-size:300% 100%;-webkit-background-clip:text;background-clip:text;animation:8s linear infinite shine}@keyframes shine{to{background-position:300% 0}}.lead{color:var(--ink-2);max-width:580px;font-size:calc(clamp(1.02rem,1.4vw,1.18rem))}.hero-cta{gap:12px;margin-top:34px}.hero-cta,.stats{flex-wrap:wrap;display:flex}.stats{border-top:1px solid var(--line);gap:14px 40px;margin-top:48px;padding-top:28px}.stats dt{font-family:var(--font-display);letter-spacing:-.03em;font-size:2rem;font-weight:600;line-height:1.1}.stats dd{color:var(--muted);font-size:.88rem;font-weight:600}.js .fade-in{opacity:0;animation:fadeUp 1s var(--ease) forwards;animation-delay:var(--d,0s);transform:translateY(20px)}@keyframes fadeUp{to{opacity:1;transform:none}}.hero-visual{perspective:1200px;position:relative}.tilt{--rx:0deg;--ry:0deg;transform:rotateX(var(--rx)) rotateY(var(--ry));transition:transform .5s var(--ease);transform-style:preserve-3d}.browser{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lg);border-radius:24px;overflow:hidden}.browser-bar{border-bottom:1px solid var(--line);background:#fbfaf8;align-items:center;gap:6px;padding:14px 16px;display:flex}.browser-bar i{background:#e5e3dd;border-radius:50%;width:10px;height:10px}.browser-bar i:first-child{background:#ff8a7a}.browser-bar i:nth-child(2){background:#ffc960}.browser-bar i:nth-child(3){background:#5ed39a}.browser-bar span{background:var(--bg-2);color:var(--muted);border-radius:999px;margin-left:12px;padding:4px 14px;font-size:.74rem;font-weight:700}.browser-body{gap:22px;padding:26px;display:grid}.sk-hero{gap:10px;display:grid}.sk{background:var(--bg-2);border-radius:6px;height:12px;display:block}.sk.w70{background:var(--ink);width:70%;height:18px}.sk.w90{width:90%}.sk.w50{width:50%}.sk-btn{background:linear-gradient(90deg,var(--accent),#8b7fff);border-radius:999px;width:110px;height:32px;margin-top:6px;display:block}.sk-chart{background:#f7f6ff;border-radius:16px;height:120px;padding:10px 0 0;overflow:hidden}.sk-chart svg{width:100%;height:100%}.chart-line{stroke-dasharray:420;stroke-dashoffset:420px;animation:draw 2.2s 1s var(--ease) forwards}.chart-area{opacity:0;animation:1.2s 2s forwards fade}@keyframes draw{to{stroke-dashoffset:0}}@keyframes fade{to{opacity:1}}.sk-row{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.sk-row span{background:var(--bg-2);border-radius:14px;height:56px}.sk-row span:nth-child(2){background:#ffe9e2}.sk-row span:nth-child(3){background:#ddf7f0}.chip-float{white-space:nowrap;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;padding:10px 16px;font-size:.86rem;font-weight:800;animation:6s ease-in-out infinite bob;position:absolute}.chip-float b{color:#22c55e}.chip-float.c1{top:18%;left:-48px}.chip-float.c2{animation-delay:-2s;bottom:22%;right:-28px}.chip-float.c3{background:var(--ink);color:#fff;animation-delay:-4s;bottom:-18px;left:18%}@keyframes bob{50%{transform:translateY(-14px)}}.marquee{border-block:1px solid var(--line);background:var(--surface);padding:22px 0;overflow:hidden}.marquee-track{align-items:center;gap:28px;width:max-content;animation:38s linear infinite marquee;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}.marquee span{font-family:var(--font-display);letter-spacing:-.02em;font-size:calc(clamp(1.2rem,2.4vw,1.8rem));font-weight:500}.marquee i{color:var(--accent-2);font-style:normal}@keyframes marquee{to{transform:translate(calc(-50% - 14px))}}.section{padding:calc(clamp(80px,11vw,140px)) 0;position:relative}.section-alt{background:var(--surface)}.section-head{margin-bottom:56px}.section-head.center{text-align:center;max-width:720px;margin-inline:auto}.section-head.split{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);align-items:center;gap:8px;margin-bottom:16px;font-size:.8rem;font-weight:800;display:inline-flex}.eyebrow:before{content:"";background:currentColor;border-radius:2px;width:18px;height:2px}h2{font-family:var(--font-display);letter-spacing:-.035em;text-wrap:balance;font-size:calc(clamp(1.9rem,4.2vw,3.3rem));font-weight:600;line-height:1.08}h3{letter-spacing:-.01em;font-size:1.25rem;font-weight:800;line-height:1.3}.section-text{color:var(--ink-2);margin-top:16px;font-size:1.05rem}.section-head.split .section-text{max-width:480px;margin-top:0}.js [data-reveal]{opacity:0;transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:var(--d,0s);transform:translateY(32px)}.js [data-reveal].is-in{opacity:1;transform:none}.team{perspective:1400px;grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.person{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);padding:32px;position:relative;overflow:hidden}.js .person[data-reveal].is-in{transform:rotateX(var(--rx)) rotateY(var(--ry))}.person:before{content:"";background:radial-gradient(circle,var(--c2),transparent 70%);opacity:.5;width:260px;height:260px;transition:transform .8s var(--ease);border-radius:50%;position:absolute;top:-130px;right:-90px}.person:hover:before{transform:scale(1.4)}.person-top{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex;position:relative}.avatar{background:linear-gradient(135deg,var(--c1),var(--c2));color:#fff;width:96px;height:96px;font-family:var(--font-display);box-shadow:0 16px 30px -14px var(--c1);transition:border-radius .6s var(--ease),transform .6s var(--ease);border-radius:28px;place-items:center;font-size:2.2rem;font-weight:600;display:grid;overflow:hidden}.person:hover .avatar{border-radius:50%;transform:rotate(-6deg)}.avatar img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.person-links{gap:8px;display:flex}.person-links a{background:var(--bg);border:1px solid var(--line);border-radius:50%;place-items:center;width:40px;height:40px;transition:background .25s,color .25s,transform .25s;display:grid}.person-links a:hover{background:var(--ink);color:#fff;transform:translateY(-3px)}.person h3{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.6rem;font-weight:600}.bio,.chips,.person h3,.role,.service{position:relative}.role{color:var(--c1);filter:saturate(1.2)brightness(.85);margin:4px 0 14px;font-weight:800}.bio,.chips li{color:var(--ink-2)}.chips{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.chips li{background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:.8rem;font-weight:700}.services{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.service{--mx:50%;--my:50%;border-radius:var(--radius);background:var(--bg);border:1px solid var(--line);transition:transform .5s var(--ease),box-shadow .5s,border-color .5s;padding:32px 28px;overflow:hidden}.service:before{content:"";opacity:0;background:radial-gradient(420px circle at var(--mx) var(--my),#5b4bff1f,transparent 45%);transition:opacity .4s;position:absolute;inset:0}.service:hover{box-shadow:var(--shadow-lg);border-color:#5b4bff40}.js .service[data-reveal].is-in:hover{transform:translateY(-6px)}.service:hover:before{opacity:1}.service>*{position:relative}.service-ico{background:var(--surface);width:54px;height:54px;color:var(--accent);box-shadow:var(--shadow);transition:transform .6s var(--ease),background .4s,color .4s;border-radius:16px;place-items:center;margin-bottom:24px;font-size:1.4rem;display:grid}.service:hover .service-ico{background:var(--accent);color:#fff;transform:rotate(-8deg)scale(1.08)}.service h3{margin-bottom:10px}.service p{color:var(--ink-2);font-size:.98rem}.service-num{font-family:var(--font-display);color:var(--muted);opacity:.6;font-size:.85rem;position:absolute;top:28px;right:28px}.filters{background:var(--surface);border:1px solid var(--line);border-radius:999px;flex-wrap:wrap;gap:6px;padding:5px;display:flex}.filters button{cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:999px;padding:9px 18px;font-size:.9rem;font-weight:700;transition:background .3s,color .3s}.filters button:hover{color:var(--ink)}.filters button.active{background:var(--ink);color:#fff}.projects{grid-template-columns:repeat(2,1fr);gap:28px;display:grid}.grid-enter-active,.grid-leave-active{transition:opacity .3s var(--ease),transform .3s var(--ease)}.grid-enter-from,.grid-leave-to{opacity:0;transform:translateY(12px)}.project-link{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);height:100%;box-shadow:var(--shadow);transition:box-shadow .5s,transform .5s var(--ease);padding:14px;display:block;position:relative}.project-link:hover{box-shadow:var(--shadow-lg);transform:translateY(-6px)}.mock{aspect-ratio:16/10;background:linear-gradient(135deg,var(--c1),var(--c2));border-radius:18px;place-items:end center;padding:9% 9% 0;display:grid;position:relative;overflow:hidden}.mock:after{content:"";pointer-events:none;background:radial-gradient(circle at 20% 10%,#ffffff59,#0000 50%)}.mock:after,.mock>img{position:absolute;inset:0}.mock>img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;transition:transform .8s var(--ease)}.project-link:hover .mock>img{transform:scale(1.05)}.mock-window{width:100%;height:100%;transition:transform .7s var(--ease);background:#fff;border-radius:12px 12px 0 0;overflow:hidden;transform:translateY(14px);box-shadow:0 -10px 40px -10px #00000040}.project-link:hover .mock-window{transform:translateY(0)scale(1.02)}.mock-bar{border-bottom:1px solid #f0efea;gap:5px;padding:9px 12px;display:flex}.mock-bar i{background:#e6e4de;border-radius:50%;width:7px;height:7px}.m-line{background:#eceae4;border-radius:4px;height:7px;margin-bottom:8px;display:block}.m-line.strong{background:var(--c1);height:12px}.m-line.c{margin-inline:auto}.w40{width:40%}.w50{width:50%}.w60{width:60%}.w70{width:70%}.w80{width:80%}.m-btn{background:var(--c1);border-radius:999px;width:64px;height:18px;margin-top:12px;display:block}.m-l1{grid-template-columns:1fr 1fr;align-items:center;gap:16px;padding:18px;display:grid}.m-img{aspect-ratio:1;background:linear-gradient(135deg,var(--c2),var(--c1));border-radius:10px}.m-l2{padding:18px}.m-cards{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px;display:grid}.m-cards span{aspect-ratio:3/4;background:var(--c2);border-radius:10px}.m-cards span:nth-child(2){background:linear-gradient(180deg,var(--c2),var(--c1))}.m-l3{text-align:center;padding:20px 18px}.m-cols{grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;display:grid}.m-cols span{background:var(--c2);border-radius:10px;height:70px}.m-cols span+span{background:#f3f2ee}.project-info{padding:22px 14px 12px}.project-meta{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:.8rem;font-weight:800}.project-info h3{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:8px;font-size:1.4rem;font-weight:600}.project-info>p{color:var(--ink-2);font-size:.98rem}.project-info .chips{margin-top:16px}.project-cover{display:block;position:relative}.project-arrow{width:46px;height:46px;box-shadow:var(--shadow);opacity:0;transition:transform .5s var(--ease),opacity .4s;background:#fff;border-radius:50%;place-items:center;display:grid;position:absolute;top:14px;right:14px;transform:scale(.6)rotate(-45deg)}.project-link:hover .project-arrow{opacity:1;transform:none}.project-badge{letter-spacing:.06em;text-transform:uppercase;background:#ffffffe6;border-radius:999px;padding:5px 12px;font-size:.75rem;font-weight:800;position:absolute;top:26px;left:26px}.project-meta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.project-author{background:var(--bg);border:1px solid var(--line);text-transform:none;letter-spacing:0;color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;padding:2px 10px 2px 2px;transition:background .25s;display:inline-flex}.project-author:hover{background:var(--bg-2)}.project-author span{background:var(--c1);color:#fff;border-radius:50%;place-items:center;width:20px;height:20px;font-size:.6rem;display:grid}.project-actions{gap:8px;margin-top:18px;display:flex}.project-actions a{border:1px solid var(--line-2);border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:.85rem;font-weight:700;transition:background .25s,color .25s,border-color .25s;display:inline-flex}.project-actions a:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.mock-code{color:#e2e8f0;background:#0f172a}.mock-code .mock-bar{border-color:#ffffff14;align-items:center}.mock-code .mock-bar i{background:#fff3}.mock-code .mock-bar span{color:#94a3b8;margin-left:8px;font:600 .7rem/1 ui-monospace,JetBrains Mono,monospace}.mock-code pre{white-space:pre-wrap;margin:0;padding:16px 18px;font:500 calc(clamp(.62rem,1.2vw,.78rem))/1.8 ui-monospace,JetBrains Mono,Consolas,monospace}.mock-code b{color:var(--c2);font-weight:700}.mock-code em{color:#4ade80;font-style:normal}.mock-code i{color:var(--c1);font-style:normal}.person-cta{background:var(--ink);color:#fff;transition:background .3s,gap .3s var(--ease);border-radius:999px;align-items:center;gap:8px;margin-top:24px;padding:12px 20px;font-size:.92rem;font-weight:700;display:inline-flex;position:relative}.person-cta:hover{background:var(--c1);gap:14px}.ai{isolation:isolate;overflow:hidden}.ai-bg{z-index:-1;pointer-events:none;inset:0}.ai-bg,.ai-orb{position:absolute}.ai-orb{filter:blur(90px);opacity:.5;border-radius:50%}.ai-orb-1{background:#d9d4ff;width:520px;height:520px;animation:22s ease-in-out infinite float1;top:5%;left:-180px}.ai-orb-2{background:#c6f3e8;width:460px;height:460px;animation:26s ease-in-out infinite float2;bottom:0;right:-160px}.flow{border-radius:var(--radius);border:1px solid var(--line);max-width:1040px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffbf;margin:0 auto 56px;padding:28px calc(clamp(18px,3vw,36px));position:relative}.flow-label{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:center;margin-bottom:20px;font-size:.78rem;font-weight:800}.flow-steps{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.flow-node{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex;position:relative}.flow-ico{z-index:1;background:var(--surface);border:1px solid var(--line-2);width:64px;height:64px;color:var(--ink);animation:nodePulse 4s var(--ease) infinite;animation-delay:calc(var(--i) * 1s);border-radius:20px;place-items:center;font-size:1.5rem;display:grid;position:relative}.flow-ico.is-ai{background:linear-gradient(135deg,var(--accent),#8b7fff);color:#fff;border:0;box-shadow:0 14px 30px -12px #5b4bffb3}.flow-text{color:var(--ink-2);max-width:170px;font-size:.92rem;font-weight:700}.flow-link{background:var(--line-2);width:calc(100% - 68px);height:2px;position:absolute;top:31px;left:calc(50% + 40px);overflow:hidden}.flow-link i{background:linear-gradient(90deg,transparent,var(--accent));width:34px;height:6px;animation:4s linear infinite packet;animation-delay:calc(var(--i) * 1s);border-radius:6px;position:absolute;top:-2px;left:0}@keyframes packet{0%{opacity:0;left:-40px}5%{opacity:1}25%{opacity:1;left:100%}26%,to{opacity:0;left:100%}}@keyframes nodePulse{0%,to{transform:none}6%{transform:translateY(-6px)scale(1.06)}14%{transform:none}}.ai-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.ai-card{background:#fffc}.ai-benefits{border-radius:var(--radius);background:var(--ink);color:#fff;grid-template-columns:repeat(3,1fr) auto;align-items:center;gap:24px;margin-top:40px;padding:28px 32px;display:grid}.ai-benefit strong{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.7rem;font-weight:600;display:block}.ai-benefit span{color:#ffffffb3;font-size:.92rem}.ai-benefits .btn-primary{color:var(--ink);background:#fff}.ai-benefits .btn-primary:hover{background:var(--accent);color:#fff}@media (width<=1080px){.ai-grid{grid-template-columns:repeat(2,1fr)}.ai-benefits{grid-template-columns:repeat(3,1fr)}.ai-benefits .btn{grid-column:1/-1;justify-self:start}}@media (width<=720px){.flow-steps{grid-template-columns:1fr;gap:22px}.flow-node{text-align:left;flex-direction:row}.flow-link{width:2px;height:22px;top:64px;left:31px}.flow-link i{display:none}.ai-benefits,.ai-grid{grid-template-columns:1fr}}.steps{counter-reset:s;grid-template-columns:repeat(4,1fr);gap:24px;display:grid;position:relative}.steps:before{content:"";background:linear-gradient(90deg,var(--accent),var(--accent-2),var(--accent-3));transform-origin:0;height:2px;transition:transform 1.6s var(--ease) .2s;position:absolute;top:31px;left:32px;right:32px}.js .steps[data-reveal]{opacity:1;transform:none}.js .steps[data-reveal]:before{transform:scaleX(0)}.js .steps[data-reveal].is-in:before{transform:none}.step,.step-num{position:relative}.js .steps[data-reveal] .step{opacity:0;transition:opacity .8s var(--ease),transform .8s var(--ease);transition-delay:calc(.3s + var(--d));transform:translateY(24px)}.js .steps[data-reveal].is-in .step{opacity:1;transform:none}.step-num{background:var(--surface);border:2px solid var(--ink);width:64px;height:64px;font-family:var(--font-display);transition:background .4s,color .4s,transform .5s var(--ease);border-radius:20px;place-items:center;margin-bottom:24px;font-size:1.1rem;font-weight:600;display:grid}.step:hover .step-num{background:var(--ink);color:#fff;transform:rotate(-8deg)}.step h3{margin-bottom:8px}.step p{color:var(--ink-2);font-size:.98rem}.faq-grid{grid-template-columns:.8fr 1.2fr;align-items:start;gap:56px;display:grid}.faq-grid .section-head{position:sticky;top:120px}.faq{gap:12px;display:grid}.faq details{background:var(--surface);border:1px solid var(--line);border-radius:22px;transition:box-shadow .4s,border-color .4s}.faq details[open]{box-shadow:var(--shadow);border-color:#0000}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:22px 26px;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary h3{font-size:1.08rem}.plus{background:var(--bg-2);width:34px;height:34px;transition:background .3s,transform .5s var(--ease);border-radius:50%;flex:none;position:relative}.plus:after,.plus:before{content:"";background:var(--ink);border-radius:2px;width:12px;height:2px;margin:-1px 0 0 -6px;transition:background .3s;position:absolute;top:50%;left:50%}.plus:after{transform:rotate(90deg)}.faq details[open] .plus{background:var(--accent);transform:rotate(135deg)}.faq details[open] .plus:after,.faq details[open] .plus:before{background:#fff}.answer{color:var(--ink-2);padding:0 26px 24px}.faq details[open] .answer{animation:fadeUp .5s var(--ease)}.contact-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lg);isolation:isolate;border-radius:36px;grid-template-columns:1fr 1fr;gap:48px;padding:calc(clamp(28px,5vw,64px));display:grid;position:relative;overflow:hidden}.contact-card:before{background:radial-gradient(circle,#dcd7ff,#0000 65%);width:600px;height:600px;animation:20s ease-in-out infinite float2;bottom:-300px;left:-200px}.contact-card:after,.contact-card:before{content:"";z-index:-1;border-radius:50%;position:absolute}.contact-card:after{background:radial-gradient(circle,#ffe0d6,#0000 65%);width:420px;height:420px;animation:22s ease-in-out infinite float1;top:-200px;right:-120px}.direct-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:36px;font-size:.85rem;font-weight:800}.direct{gap:10px;margin-top:14px;display:grid}.direct a{align-items:center;gap:12px;font-size:1.05rem;font-weight:700;transition:color .25s,transform .25s;display:inline-flex}.direct a:hover{color:var(--accent);transform:translate(4px)}.direct .ico{background:var(--bg);border:1px solid var(--line);border-radius:12px;width:40px;height:40px;padding:10px}.contact-form{align-content:start;gap:14px;display:grid}.field{position:relative}.field input,.field textarea{border:1px solid var(--line-2);resize:vertical;background:#fffc;border-radius:16px;outline:none;width:100%;padding:26px 18px 10px;transition:border-color .3s,box-shadow .3s}.field textarea{min-height:130px}.field input:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px #5b4bff1f}.field label{color:var(--muted);pointer-events:none;transform-origin:0 0;transition:transform .3s var(--ease),color .3s;font-weight:600;position:absolute;top:18px;left:19px}:is(.field input:focus+label,.field input:not(:placeholder-shown)+label,.field textarea:focus+label,.field textarea:not(:placeholder-shown)+label),.field input:focus+label,.field input:not(:placeholder-shown)+label,.field textarea:focus+label,.field textarea:not(:placeholder-shown)+label{color:var(--accent);transform:translateY(-10px)scale(.78)}.types{border:0;flex-wrap:wrap;gap:8px;display:flex}.types legend{color:var(--muted);margin-bottom:10px;font-size:.9rem;font-weight:700}.types label{cursor:pointer}.types input{opacity:0;pointer-events:none;position:absolute}.types span{border:1px solid var(--line-2);background:#fffc;border-radius:999px;padding:9px 16px;font-size:.88rem;font-weight:700;transition:background .25s,color .25s,border-color .25s,transform .25s;display:inline-block}.types label:hover span{transform:translateY(-2px)}.types input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}.types input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.form-status{text-align:center;min-height:1.4em;color:var(--accent-3);font-weight:700}.form-status.err{color:#e5484d}.site-footer{padding:40px 0 32px;overflow:hidden}.site-footer .container{container-type:inline-size}.footer-big{font-family:var(--font-display);letter-spacing:-.06em;background:linear-gradient(180deg,var(--ink) 30%,#12121614);color:#0000;white-space:nowrap;-webkit-background-clip:text;background-clip:text;margin-bottom:32px;padding-bottom:.04em;font-size:14.6cqw;font-weight:700;line-height:.95}.footer-row{border-top:1px solid var(--line);color:var(--ink-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;padding:20px 0;display:flex}.footer-row.small{color:var(--muted);font-size:.88rem}.to-top{font-weight:700;transition:color .25s}.to-top:hover{color:var(--accent)}@media (width<=1080px){.nav-links{display:none}.menu-toggle{display:grid}.hero-grid{grid-template-columns:1fr;gap:72px}.hero-visual{width:100%;max-width:520px;margin-inline:auto}.services,.steps{grid-template-columns:repeat(2,1fr)}.steps{row-gap:40px}.steps:before{display:none}.faq-grid{grid-template-columns:1fr;gap:0}.faq-grid .section-head{position:static}.contact-card{grid-template-columns:1fr}}@media (width<=720px){body{font-size:16px}.hide-sm,.logo-text{display:none}.hero{padding-top:120px}.projects,.services,.steps,.team{grid-template-columns:1fr}.chip-float.c1{top:-18px;left:-6px}.chip-float.c2{right:-6px}.person{padding:24px}.section-head{margin-bottom:40px}.stats{gap:14px 28px}.stats dt{font-size:1.6rem}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.js .fade-in,.js .word>span,.js [data-reveal]{opacity:1!important;transform:none!important}}.mock-proto{padding:0}.mock-proto-inner{place-items:center;width:100%;height:100%;display:grid}.project-cover.is-proto{cursor:zoom-in;text-align:left;background:0 0;border:0;width:100%;padding:0;display:block}.project-cover.is-proto .mock:before{content:attr(data-hint);z-index:2;opacity:0;color:#fff;white-space:nowrap;transition:opacity .3s,translate .3s var(--ease);background:#121216d9;border-radius:999px;padding:8px 14px;font-size:.8rem;font-weight:700;position:absolute;bottom:14px;left:50%;translate:-50% 10px}.project-cover.is-proto:hover .mock:before{opacity:1;translate:-50%}.project-actions button{border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:.85rem;font-weight:700;transition:background .25s;display:inline-flex}.project-actions .case-link,.project-actions button:hover{background:var(--accent);border-color:var(--accent)}.hp{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.consent{color:var(--ink-2);cursor:pointer;align-items:flex-start;gap:10px;font-size:.88rem;display:flex}.consent input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin-top:2px}.consent a{color:var(--accent);text-underline-offset:3px;font-weight:700;text-decoration:underline}.footer-cities{justify-content:flex-start;gap:6px 18px;font-weight:700}.footer-cities span{color:var(--muted);font-weight:600}.footer-cities a{color:var(--ink-2);transition:color .25s}.footer-cities a:hover,.footer-links a:hover{color:var(--accent)}.footer-links{align-items:center;gap:20px;display:flex}.project-actions .case-link{color:#fff}.project-actions .case-link:hover{background:var(--ink);border-color:var(--ink)}
