@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4f6667dd39116621-s.00az9qtie3ho1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/07935285219a259d-s.3j-a226dh71aj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/f58031ded4338640-s.2gwoz23eiro2t.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/77814b00d5ca94a4-s.0i3h3th1vs4m7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/605ce01b664af129-s.p.0zr6hhvz-h9nw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.A_g20G_className{font-family:Geist,Geist Fallback;font-style:normal}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b0c6b664fd57c2c6-s.27spqqad3wyeo.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6e342921ee4dcd9d-s.3f4zuumv8svu0.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bb852295097cd96-s.34r5yzckw0h2s.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9eb5a876700c0028-s.2jyz_zw3a8jit.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2a04751c893bf294-s.30bdpjkrtcces.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/07a39a8a4660cc7c-s.1v5bejj26fx9h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.MqqGTq_className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}
@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/125b6750c58ce347-s.1wwzpfhzaj2r0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d902bc2bfdd0a4cb-s.p.2rlzm4mj5kw8e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif Fallback;src:local(Times New Roman);ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.0%;size-adjust:83.94%}._2iCYNq_className{font-family:Instrument Serif,Instrument Serif Fallback;font-style:normal;font-weight:400}
@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/e27b85d01cb4b1af-s.2yhdohbnxjaph.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/10e5db483fb7b6ef-s.0vsuy7nj1h55w.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/01a1b57b2e0cef27-s.1tzxx-40rxw3x.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/648e19a466ec92f1-s.3aj86x1l4-kru.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/29e2a75af8e45044-s.1d8-5gtibtj96.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Fallback;src:local(Arial);ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.0%;size-adjust:101.39%}.rwJf7a_className{font-family:Nunito,Nunito Fallback;font-style:normal}
html,body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}a{color:inherit;text-decoration:none}*{box-sizing:border-box}
html:has(.site){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#000}html:has(.site) body{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#000}html:has(.site){scroll-behavior:smooth;scroll-padding-top:80px}.site{--text:#f0f0f0;--body:#a1a1aa;--faint:#71717a;--line:#ffffff14;--line-strong:#ffffff24;--accent:#4c8dff;--accent-soft:#7fb2ff;--cyan:#5ce1f0;--amber:#ffb12e;--font-sans:var(--font-geist), ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:var(--font-instrument), ui-serif, Georgia, serif;--font-mono:var(--font-geist-mono), ui-monospace, SFMono-Regular, Menlo, monospace;color:var(--body);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#000;font-size:16px;line-height:1.5;overflow-x:clip}.site ::selection{color:#fff;background:#4c8dff59}.site :where(h1,h2,h3,p,ul,ol){margin:0}.site :where(ul,ol){padding:0;list-style:none}.site :where(button){font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.site :focus-visible{outline:2px solid var(--accent-soft);outline-offset:3px;border-radius:6px}.skip-link{z-index:100;color:#000;background:#f0f0f0;border-radius:10px;padding:8px 14px;font-size:14px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:12px}.container{width:100%;max-width:72rem;margin:0 auto;padding:0 16px}.container-narrow{max-width:64rem}@media (min-width:640px){.container{padding:0 24px}}.text-silver{background:linear-gradient(#fff 20%,#ffffff94 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin-bottom:-.15em;padding-bottom:.15em}.icon{width:20px;height:20px}.btn{white-space:nowrap;border-radius:12px;align-items:center;gap:8px;height:44px;padding:0 20px;font-size:15px;font-weight:500;transition:background .2s,border-color .2s,transform .2s;display:inline-flex}.btn:active{transform:scale(.98)}.btn-light{color:#000;background:#f0f0f0}.btn-light:hover{background:#fff}.btn-dark{color:var(--text)}.btn-dark:hover{background:#ffffff0f}.btn-sm{border-radius:10px;height:36px;padding:0 14px;font-size:14px}.btn-mono{border:1px solid var(--line-strong);font-family:var(--font-mono);font-size:13.5px;font-weight:400}.btn-mono:hover{border-color:#ffffff3d}.copy-state{border-left:1px solid var(--line-strong);font-family:var(--font-sans);color:var(--faint);padding-left:10px;font-size:12px}.header{z-index:50;-webkit-backdrop-filter:blur(20px)saturate(1.4);backdrop-filter:blur(20px)saturate(1.4);background:#0009;border-bottom:1px solid #ffffff0f;position:fixed;inset:0 0 auto}.header-inner{align-items:center;gap:24px;height:64px;display:flex}.logo{align-items:center;gap:10px;display:inline-flex}.logo-word{letter-spacing:-.03em;color:var(--text);font-size:19px;font-weight:500}.nav-links{gap:4px;margin-left:16px;font-size:14px;display:none}.nav-link{border-radius:8px;padding:6px 12px;transition:background .2s,color .2s}.nav-link:hover{color:var(--text);background:#ffffff0f}.header-cta{margin-left:auto}@media (min-width:768px){.nav-links{display:flex}}.hero{isolation:isolate;padding:120px 0 88px;position:relative;overflow:hidden}.hero-beam{pointer-events:none;background:linear-gradient(115deg,#0000 38%,#ffffff0f 46%,#ffffff04 54%,#0000 62%),radial-gradient(60% 50% at 72% 34%,#4c8dff29,#0000 70%);height:140%;animation:14s ease-in-out infinite alternate beam-drift;position:absolute;inset:-20% -10% auto}@keyframes beam-drift{0%{opacity:.85;transform:translate(-2%)}to{opacity:1;transform:translate(3%)}}.grid-bg{z-index:-1;opacity:.6;background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 40%,#000 30%,#0000 75%);mask-image:radial-gradient(70% 60% at 50% 40%,#000 30%,#0000 75%)}.hero-grid{grid-template-columns:minmax(0,1fr);align-items:center;gap:24px;display:grid}.pill{color:#d4d4d8;background:#ffffff08;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:8px;max-width:100%;margin-bottom:28px;padding:6px 14px;font-size:13px;transition:border-color .2s;display:inline-flex}.pill:hover{border-color:#fff3}.pill-dot{background:var(--amber);width:6px;height:6px;box-shadow:0 0 10px var(--amber);border-radius:999px;flex-shrink:0}.pill-arrow{color:var(--faint);transition:transform .2s}.pill:hover .pill-arrow{transform:translate(2px)}.hero-h1{font-weight:400}.hero-kicker{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--faint);margin-bottom:18px;font-size:12px;display:block}.hero-title{font-family:var(--font-display);letter-spacing:-.02em;font-size:68px;font-weight:400;line-height:.98;display:block}.hero-text{text-wrap:pretty;max-width:32rem;margin-top:28px;font-size:17px;line-height:1.65}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:40px;display:flex}.hero-visual{justify-content:center;display:flex}.hero-copy>*{animation:.9s cubic-bezier(.2,.8,.2,1) both enter}.hero-copy>:nth-child(2){animation-delay:80ms}.hero-copy>:nth-child(3){animation-delay:.16s}.hero-copy>:nth-child(4){animation-delay:.24s}.hero-visual{animation:1.2s cubic-bezier(.2,.8,.2,1) .25s both enter}@keyframes enter{0%{opacity:0;filter:blur(4px);transform:translateY(14px)}to{opacity:1;filter:none;transform:none}}@media (min-width:640px){.hero{padding:160px 0 128px}.hero-title{font-size:92px}.hero-text{font-size:18px}}@media (min-width:1024px){.hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px}.hero-title{font-size:108px}.hero-visual{justify-content:flex-end}}@property --gap{syntax:"<length>";inherits:true;initial-value:46px}.stack-scene{--s:190px;--gap:36px;width:calc(var(--s) * 1.55);height:calc(var(--s) * 1.5);perspective:1600px;transition:--gap .8s cubic-bezier(.2,.8,.2,1);position:relative}.stack-scene:hover{--gap:calc(var(--s) * .27)}.stack{width:var(--s);height:var(--s);margin:calc(var(--s) / -2) 0 0 calc(var(--s) / -2);transform-style:preserve-3d;position:absolute;top:64%;left:50%;transform:rotateX(58deg)rotate(-45deg)}.stack-floor{filter:blur(24px);pointer-events:none;background:radial-gradient(closest-side,#4c8dff3d,#0000);width:130%;height:46%;position:absolute;top:70%;left:50%;transform:translate(-50%,-50%)}.layer{transform-style:preserve-3d;transform:translateZ(calc(var(--i) * var(--gap)));animation:7s ease-in-out infinite layer-float;animation-delay:calc(var(--i) * -.7s);position:absolute;inset:0}@keyframes layer-float{0%,to{transform:translateZ(calc(var(--i) * var(--gap)))}50%{transform:translateZ(calc(var(--i) * var(--gap) + 9px))}}.layer-edge,.layer-face{border-radius:22px;position:absolute;inset:0}.layer-edge{background:#06070af5;border:1px solid #ffffff0f;transform:translateZ(-7px)}.layer-face{background:linear-gradient(135deg,#2a2e3ac7,#0a0b0ee6);border:1px solid #ffffff24;overflow:hidden;box-shadow:inset 0 1px #ffffff1f,0 30px 60px -20px #000c}.layer[data-k=ui] .layer-face{background:linear-gradient(135deg,#304878d1,#0a0e1aeb);border-color:#7fb2ff8c;box-shadow:inset 0 1px #fff3,0 0 60px #4c8dff59}.layer[data-k=moln] .layer-face{border-color:#5ce1f047}.layer-label,.layer-sub{font-family:var(--font-mono);letter-spacing:.04em;font-size:10px;position:absolute;bottom:12px}.layer-label{color:#fff9;left:14px}.layer-sub{color:#ffffff4d;display:none;right:14px}.lb-ui{background:#00000059;border:1px solid #ffffff24;border-radius:12px;flex-direction:column;gap:7px;padding:10px;display:flex;position:absolute;inset:14px 14px 34px}.lb-ui-bar{gap:4px;margin-bottom:2px;display:flex}.lb-ui-bar i{background:#ffffff40;border-radius:999px;width:6px;height:6px}.lb-ui-hero{background:#fff9;border-radius:6px;width:72%;height:11px}.lb-ui-sub{background:#fff3;border-radius:3px;width:50%;height:6px}.lb-ui-btn{background:var(--accent);border-radius:7px;width:34%;height:13px;box-shadow:0 0 16px #4c8dffb3}.lb-ui-cards{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:auto;display:grid}.lb-ui-cards span{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:7px;height:30px}.lb-code{flex-direction:column;justify-content:center;gap:9px;display:flex;position:absolute;inset:20px 20px 36px}.lb-code span{background:#c4b5fd80;border-radius:3px;height:6px}.lb-code span:nth-child(3n+2){background:#7fb2ff73}.lb-code span:nth-child(3n){background:#fcd34d66}.lb-rows{flex-direction:column;justify-content:center;display:flex;position:absolute;inset:18px 18px 36px}.lb-rows div{border-bottom:1px solid #ffffff12;grid-template-columns:1fr 2fr 1fr;gap:8px;padding:7px 0;display:grid}.lb-rows span{background:#ffffff24;border-radius:3px;height:6px}.lb-rows span:first-child{background:#4ade8073}.lb-grid{background:radial-gradient(circle,#5ce1f047,#0000 60%),linear-gradient(#ffffff12 1px,#0000 1px) 0 0/20px 20px,linear-gradient(90deg,#ffffff12 1px,#0000 1px) 0 0/20px 20px;position:absolute;inset:0}@media (min-width:640px){.stack-scene{--s:236px;--gap:46px}.layer-sub{display:block}}@media (min-width:1280px){.stack-scene{--s:262px;--gap:50px}}.band{border-top:1px solid #ffffff0f;border-bottom:1px solid #ffffff0f;padding:40px 0}.band-label{text-align:center;color:var(--faint);margin-bottom:24px;font-size:13px}.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.marquee-track{gap:12px;width:max-content;animation:50s linear infinite marquee;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}@keyframes marquee{to{transform:translate(calc(-50% - 6px))}}.chip{color:#d4d4d8;white-space:nowrap;border:1px solid #ffffff14;border-radius:999px;padding:8px 16px;font-size:14px}.section{padding:112px 0;position:relative}.section-tight{padding-top:0}.section-heading{text-align:center;max-width:42rem;margin:0 auto}.eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--faint);margin-bottom:16px;font-size:12px}.section-title{letter-spacing:-.04em;text-wrap:balance;font-size:34px;font-weight:400;line-height:1.1}.section-text{text-wrap:pretty;max-width:36rem;margin:20px auto 0;font-size:16px;line-height:1.65}@media (min-width:640px){.section{padding:144px 0}.section-tight{padding-top:0}.section-title{font-size:52px}.section-text{font-size:17px}}.card{border:1px solid var(--line);background:linear-gradient(#ffffff09,#ffffff03);border-radius:20px;position:relative;overflow:hidden}.card:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(#ffffff24,#0000 40%);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.services-grid{gap:20px;margin-top:64px;display:grid}.feature-card{padding:24px;scroll-margin-top:96px}.feature-visual{background:#0006;border:1px solid #ffffff0d;border-radius:12px;margin-bottom:32px;padding:12px}.illu{width:100%;height:auto;display:block}.feature-title{letter-spacing:-.02em;color:var(--text);font-size:20px;font-weight:500}.feature-text{max-width:28rem;margin-top:8px;font-size:15px;line-height:1.65}.feature-link,.related-more{color:var(--accent-soft);gap:6px;margin-top:18px;font-size:14px;transition:color .2s;display:inline-flex}.feature-link:hover,.related-card:hover .related-more{color:#fff}@media (min-width:640px){.feature-card{padding:32px}.feature-visual{padding:16px}}@media (min-width:768px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.web-block,.app-row{animation:6s cubic-bezier(.2,.8,.2,1) infinite both build-in;animation-delay:var(--d,0s)}@keyframes build-in{0%{opacity:0;transform:translateY(6px)}12%,85%{opacity:1;transform:none}to{opacity:0}}.web-ring{animation:6s cubic-bezier(.3,.7,.2,1) infinite both ring-fill;animation-delay:var(--d,0s)}@keyframes ring-fill{0%,15%{stroke-dashoffset:125.66px}40%,85%{stroke-dashoffset:0}to{stroke-dashoffset:125.66px}}.web-score,.app-step,.ai-field{animation:6s ease-in-out infinite both field-on;animation-delay:var(--d,0s)}@keyframes field-on{0%,12%{opacity:.15}24%,85%{opacity:1}to{opacity:.15}}.app-toast{animation:6s cubic-bezier(.2,.8,.2,1) infinite toast}@keyframes toast{0%,25%{opacity:0;transform:translateY(-34px)}33%,80%{opacity:1;transform:none}92%,to{opacity:0;transform:translateY(-8px)}}.sys-flow{stroke-dasharray:4 12;animation:1.6s linear infinite flow;animation-delay:var(--d,0s)}@keyframes flow{to{stroke-dashoffset:-32px}}.sys-pulse{transform-box:fill-box;transform-origin:50%;opacity:0;animation:2.8s ease-out infinite hub-pulse}@keyframes hub-pulse{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(1.22)}}.sys-led{animation:2.4s ease-in-out infinite led;animation-delay:var(--d,0s)}@keyframes led{0%,to{opacity:1}50%{opacity:.3}}.ai-scan{opacity:0;animation:6s ease-in-out infinite ai-scan}@keyframes ai-scan{0%{opacity:0;transform:translateY(0)}6%{opacity:1}40%{opacity:1;transform:translateY(140px)}48%,to{opacity:0;transform:translateY(140px)}}.ai-dot{opacity:0;animation:3s ease-in-out infinite ai-dot}@keyframes ai-dot{0%{opacity:0;transform:translate(0)}15%{opacity:1}70%{opacity:1;transform:translate(40px)}80%,to{opacity:0;transform:translate(40px)}}.ai-line{stroke-dasharray:220;animation:6s ease-out infinite both ai-line;animation-delay:var(--d,0s)}@keyframes ai-line{0%,8%{stroke-dashoffset:220px}28%,85%{stroke-dashoffset:0}to{stroke-dashoffset:220px}}.code-wrap{margin-top:56px}.code-card{box-shadow:0 40px 120px -40px #4c8dff4d}.code-tabs{border-bottom:1px solid var(--line);align-items:center;gap:4px;padding:10px 12px;display:flex;overflow-x:auto}.code-tab{color:var(--faint);border-radius:8px;flex-shrink:0;padding:6px 12px;font-size:13px;transition:background .2s,color .2s}.code-tab:hover{color:#d4d4d8}.code-tab[aria-selected=true]{color:var(--text);background:#ffffff14}.code-file{font-family:var(--font-mono);color:#52525b;flex-shrink:0;margin-left:auto;padding-right:8px;font-size:12px;display:none}.code-pre{min-height:440px;font-family:var(--font-mono);font-variant-ligatures:none;margin:0;padding:20px 0;font-size:12.5px;line-height:1.75;overflow-x:auto}.code-line{display:flex}.code-num{text-align:right;color:#3f3f46;-webkit-user-select:none;user-select:none;flex-shrink:0;width:44px;padding-right:16px}.code-src{white-space:pre;padding-right:24px}.code-note{border-top:1px solid var(--line);padding:14px 20px;font-size:13px}.tok-kw{color:#c4b5fd}.tok-str{color:#fcd34d}.tok-type{color:#67e8f9}.tok-fn,.tok-key{color:#93c5fd}.tok-num{color:#fda4af}.tok-tag{color:#7dd3fc}.tok-com{color:#52525b}.tok-txt{color:#e4e4e7}.tok-pun{color:#71717a}@media (min-width:640px){.code-file{display:inline}.code-pre{font-size:13px}}.glow{pointer-events:none;border-radius:999px;width:900px;height:480px;position:absolute;top:140px;left:50%;transform:translate(-50%)}.glow-amber{background:radial-gradient(closest-side,#ffb12e1a,#0000)}.tag{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--body);border:1px solid #ffffff1a;border-radius:999px;align-items:center;padding:2px 8px;font-size:10px;display:inline-flex}.lumo-card{align-items:center;gap:32px;margin-top:64px;padding:24px;display:grid}.lumo-name{color:var(--text);align-items:center;gap:10px;font-size:15px;font-weight:500;display:flex}.lumo-sun{background:radial-gradient(circle, #ffd27a, var(--amber));width:10px;height:10px;box-shadow:0 0 14px var(--amber);border-radius:999px}.lumo-title{letter-spacing:-.03em;color:var(--text);margin-top:20px;font-size:28px;font-weight:400;line-height:1.15}.lumo-text{max-width:30rem;margin:14px 0 28px;font-size:15.5px;line-height:1.65}.window{border:1px solid var(--line-strong);background:#070708;border-radius:14px;overflow:hidden;box-shadow:0 40px 120px -40px #ffb12e47}.window-bar{border-bottom:1px solid var(--line);align-items:center;gap:6px;padding:10px 14px;display:flex}.window-bar i{background:#ffffff26;border-radius:999px;width:10px;height:10px}.window-url{font-family:var(--font-mono);color:var(--faint);background:#ffffff0a;border-radius:6px;margin:0 auto;padding:3px 12px;font-size:11px}.lumo-body{gap:12px;padding:14px;display:grid}.lumo-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.lumo-kpi:nth-child(3){display:none}@media (min-width:520px){.lumo-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.lumo-kpi:nth-child(3){display:block}}.lumo-kpi{background:#ffffff05;border:1px solid #ffffff0f;border-radius:10px;padding:10px 12px}.lumo-kpi p:first-child{color:var(--faint);font-size:11.5px}.lumo-kpi p:last-child{letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums;margin-top:4px;font-size:17px}.lumo-chart{width:100%;height:auto;display:block}.reveal-ready .chart-line{stroke-dasharray:1400;stroke-dashoffset:1400px}.reveal-ready .is-visible .chart-line{animation:2.6s cubic-bezier(.3,.7,.2,1) .3s forwards chart-draw}@keyframes chart-draw{to{stroke-dashoffset:0}}.reveal-ready .chart-area{opacity:0}.reveal-ready .is-visible .chart-area{animation:1.2s ease-out 1.4s forwards fade}@keyframes fade{to{opacity:1}}.project-grid{gap:20px;margin-top:20px;display:grid}.project-card{flex-direction:column;padding:24px;display:flex}a.project-card{border-style:dashed;border-color:#ffffff24}a.project-card:hover{border-color:#7fb2ff80}.project-icon{color:#fff;border-radius:12px;place-items:center;width:44px;height:44px;margin-bottom:20px;display:grid;box-shadow:inset 0 1px #ffffff40,0 8px 24px -8px #0009}.project-icon .icon{width:22px;height:22px}.project-icon-empty{color:var(--body);box-shadow:none;border:1px dashed #ffffff38}.project-name{letter-spacing:-.01em;color:var(--text);font-size:16px;font-weight:500}.project-tag{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin-top:2px;font-size:11px}.project-text{margin-top:10px;font-size:14px;line-height:1.6}.project-cta{color:var(--accent-soft);margin-top:auto;padding-top:16px;font-size:14px}@media (min-width:640px){.lumo-card{padding:32px}.lumo-title{font-size:34px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.lumo-card{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:48px;padding:40px}.project-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.cap-grid{border:1px solid var(--line);background:var(--line);border-radius:20px;gap:1px;margin-top:64px;display:grid;overflow:hidden}.cap{background:#000;padding:24px}.cap-icon{border:1px solid var(--line);color:#d4d4d8;background:#ffffff08;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:16px;display:inline-flex}.cap-title{letter-spacing:-.01em;color:var(--text);font-size:16px;font-weight:500}.cap-text{margin-top:6px;font-size:14px;line-height:1.6}@media (min-width:640px){.cap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cap{padding:28px}}@media (min-width:1024px){.cap-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.steps{margin-top:64px;position:relative}.steps-list{gap:40px;display:grid}.steps-line,.steps-fill{position:absolute}.steps-line{background:#ffffff1a;width:1px;top:18px;bottom:40px;left:17.5px}.steps-fill{display:none}.step{padding-left:56px;position:relative}.step-node{z-index:1;width:36px;height:36px;font-family:var(--font-mono);color:var(--faint);transition:border-color .5s,color .5s,background .5s,box-shadow .5s;transition-delay:var(--rd,0s);background:#0b0b0c;border:1px solid #ffffff1f;border-radius:999px;place-items:center;font-size:12px;display:grid;position:absolute;top:-5px;left:0}.is-visible .step-node{color:#cfe0ff;background:#07101f;border-color:#4c8dffb3;box-shadow:0 0 20px #4c8dff59}.step-title{letter-spacing:-.02em;color:var(--text);font-size:18px;font-weight:500}.step .tag{margin-top:10px}.step-text{max-width:17rem;margin-top:12px;font-size:14.5px;line-height:1.6}@media (min-width:1024px){.steps-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.steps-line,.steps-fill{height:1px;display:block;top:18px;bottom:auto;left:12.5%}.steps-line{width:auto;right:12.5%}.steps-fill{background:linear-gradient(90deg, var(--accent), var(--cyan));width:0;transition:width 1.6s cubic-bezier(.2,.8,.2,1) .2s;box-shadow:0 0 12px #4c8dff99}.is-visible .steps-fill{width:75%}.step{text-align:center;flex-direction:column;align-items:center;padding-left:0;display:flex}.step-node{margin-bottom:20px;position:relative;top:0}}.split{align-items:center;gap:48px;display:grid}.split .section-title{font-size:34px}.split-text{max-width:28rem;margin-top:20px;font-size:16px;line-height:1.65}.checklist{color:#d4d4d8;gap:12px;margin-top:32px;font-size:15px;display:grid}.checklist li{align-items:flex-start;gap:12px;display:flex}.checklist svg{width:20px;height:20px;color:var(--accent-soft);flex-shrink:0;margin-top:1px}@media (min-width:640px){.split .section-title{font-size:48px}}@media (min-width:1024px){.split{grid-template-columns:repeat(2,minmax(0,1fr))}}.git-stream{flex-direction:column;height:320px;display:flex}.git-head{z-index:2;border-bottom:1px solid var(--line);font-family:var(--font-mono);color:var(--faint);align-items:center;gap:10px;padding:12px 18px;font-size:12px;display:flex;position:relative}.git-branch{border:1px solid var(--line-strong);color:#d4d4d8;border-radius:6px;padding:1px 8px}.git-window{flex:1;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 14% 86%,#0000);mask-image:linear-gradient(#0000,#000 14% 86%,#0000)}.git-track{padding:0 18px;animation:26s linear infinite git-scroll}@keyframes git-scroll{to{transform:translateY(-50%)}}.git-row{font-family:var(--font-mono);border-bottom:1px solid #ffffff0a;align-items:center;gap:12px;padding:11px 0;font-size:12px;display:flex}.git-hash,.git-when{color:#52525b;flex-shrink:0}.git-type{text-align:center;color:#a1a1aa;background:#ffffff0d;border-radius:6px;flex-shrink:0;width:56px;padding:1px 0;font-size:11px}.git-type[data-t=feat]{color:#4ade80;background:#4ade8014}.git-type[data-t=fix]{color:#fbbf24;background:#fbbf2414}.git-type[data-t=test]{color:#c4b5fd;background:#c4b5fd14}.git-type[data-t=deploy]{color:var(--accent-soft);background:#4c8dff1a}.git-type[data-t=perf]{color:var(--cyan);background:#5ce1f014}.git-type[data-t=a11y]{color:#f9a8d4;background:#f9a8d414}.git-msg{min-width:0;font-family:var(--font-sans);color:#e4e4e7;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13.5px;overflow:hidden}.cta{isolation:isolate;text-align:center;padding:88px 0 300px;position:relative;overflow:hidden}.cta-inner{max-width:48rem}.cta-mark{justify-content:center;margin-bottom:32px;display:flex}.cta-mark svg{animation:4.5s ease-in-out infinite mark-glow}@keyframes mark-glow{0%,to{filter:drop-shadow(0 0 #4c8dff00)}50%{filter:drop-shadow(0 0 22px #4c8dff99)}}.cta-title{font-family:var(--font-display);letter-spacing:-.02em;font-size:54px;font-weight:400;line-height:1}.cta-text{max-width:28rem;margin:24px auto 0;font-size:17px;line-height:1.65}.cta-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:40px;display:flex}@media (min-width:640px){.cta{padding-top:120px}.cta-title{font-size:88px}}.horizon{z-index:-1;pointer-events:none;height:280px;position:absolute;inset:auto 0 0}.horizon-glow{background:radial-gradient(closest-side,#4c8dff4d,#5ce1f00f 60%,#0000);width:1200px;height:440px;animation:8s ease-in-out infinite alternate breathe;position:absolute;bottom:150px;left:50%;transform:translate(-50%,50%)}@keyframes breathe{0%{opacity:.7}to{opacity:1}}.horizon-line{background:linear-gradient(90deg,#0000,#a0c8ffcc 25%,#fff 50%,#a0c8ffcc 75%,#0000);height:1px;position:absolute;bottom:150px;left:0;right:0;box-shadow:0 0 20px 1px #5ce1f08c}.horizon-floor{transform-origin:top;background-image:linear-gradient(#7caaff52 1px,#0000 1px),linear-gradient(90deg,#7caaff52 1px,#0000 1px);background-size:56px 56px;width:200%;height:250px;animation:2.4s linear infinite floor-move;position:absolute;top:calc(100% - 150px);left:-50%;transform:perspective(260px)rotateX(64deg);-webkit-mask-image:linear-gradient(#0000,#000 25% 55%,#0000);mask-image:linear-gradient(#0000,#000 25% 55%,#0000)}@keyframes floor-move{to{background-position:0 56px,0 0}}.container-faq{max-width:52rem}.faq{border-top:1px solid var(--line);margin-top:56px}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:24px;padding:22px 4px;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-q{letter-spacing:-.01em;color:var(--text);font-size:17px;font-weight:500}.faq-icon{flex-shrink:0;width:14px;height:14px;position:relative}.faq-icon:before,.faq-icon:after{content:"";background:var(--body);border-radius:1px;width:14px;height:1.5px;transition:transform .25s;position:absolute;top:6px;left:0}.faq-icon:after{transform:rotate(90deg)}.faq-item[open] .faq-icon:after{transform:rotate(0)}.faq-a{max-width:44rem;padding:0 4px 24px;font-size:15.5px;line-height:1.7}.crumbs{color:var(--faint);margin-bottom:28px;font-size:13px}.crumbs ol{flex-wrap:wrap;gap:8px;display:flex}.crumbs li+li:before{content:"/";color:#3f3f46;margin-right:8px}.crumbs a:hover{color:var(--text)}.crumbs [aria-current]{color:#d4d4d8}.service-title{font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance;font-size:52px;font-weight:400;line-height:1.02}.service-visual{width:100%;max-width:520px;padding:12px}.service-visual .feature-visual{margin-bottom:0}.check-grid{border:1px solid var(--line);background:var(--line);border-radius:20px;gap:1px;margin-top:56px;display:grid;overflow:hidden}.check-item{background:#000;padding:24px}.check-icon{width:32px;height:32px;color:var(--accent-soft);background:#4c8dff14;border:1px solid #4c8dff59;border-radius:999px;justify-content:center;align-items:center;margin-bottom:16px;display:inline-flex}.check-icon svg{width:18px;height:18px}.prose-list{gap:72px;display:grid}.prose-split{gap:20px;display:grid}.prose-title{letter-spacing:-.035em;text-wrap:balance;font-size:30px;font-weight:400;line-height:1.12}.prose-body{gap:16px;max-width:40rem;font-size:16.5px;line-height:1.75;display:grid}.related-grid{gap:20px;margin-top:56px;display:grid}.related-card{flex-direction:column;padding:28px;transition:border-color .3s;display:flex}.related-card:hover{border-color:#7fb2ff66}.related-more{margin-top:auto;padding-top:18px}.notfound{min-height:70vh}.notfound-inner{max-width:44rem}.notfound-links{gap:10px;margin-top:28px;font-size:16px;display:grid}.notfound-links a{color:var(--accent-soft)}.notfound-links a:hover{color:#fff}@media (min-width:640px){.service-title{font-size:68px}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.check-item{padding:28px}.prose-title{font-size:40px}}@media (min-width:1024px){.service-title{font-size:76px}.check-grid,.related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.prose-split{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px}}.footer{z-index:1;background:#000;border-top:1px solid #ffffff0f;position:relative}.footer-grid{gap:40px;padding-top:48px;padding-bottom:48px;font-size:14px;display:grid}.footer-about{max-width:18rem;color:var(--faint);margin-top:12px;line-height:1.6}.footer-mail{font-family:var(--font-mono);color:#d4d4d8;margin-top:12px;font-size:13px;transition:color .2s;display:inline-block}.footer-title{color:#d4d4d8;font-size:13px;font-weight:500}.footer-list{gap:8px;margin-top:12px;display:grid}.footer-list a{transition:color .2s}.footer-list a:hover,.footer-mail:hover{color:var(--text)}.footer-bottom{color:var(--faint);border-top:1px solid #ffffff0f;padding-top:20px;padding-bottom:20px;font-size:13px}@media (min-width:768px){.footer-grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}.reveal-ready [data-reveal]{opacity:0;transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .8s cubic-bezier(.2,.8,.2,1);transition-delay:var(--rd,0s);transform:translateY(18px)}.reveal-ready [data-reveal].is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html:has(.site){scroll-behavior:auto}.site *,.site :before,.site :after{transition:none!important;animation:none!important}.reveal-ready [data-reveal]{opacity:1;transform:none}.reveal-ready .chart-line{stroke-dashoffset:0}.reveal-ready .chart-area{opacity:1}}
