.case-studies-page a{color:var(--color-indigo);text-decoration:none}.case-studies-page a:hover{color:var(--color-navy)}.case-studies-page .mono{font-family:Geist Mono,ui-monospace,SFMono-Regular,Menlo,monospace}@keyframes rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}.case-studies-page .in{animation:.8s cubic-bezier(.2,.7,.2,1) both rise}.case-studies-page .d1{animation-delay:.12s}.case-studies-page .d2{animation-delay:.24s}.case-studies-page .d3{animation-delay:.36s}.case-studies-page .d4{animation-delay:.48s}.case-studies-page .d5{animation-delay:.6s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.case-studies-page .fl{animation:5.2s cubic-bezier(.45,0,.55,1) infinite float}.case-studies-page .f2{animation-delay:-1.3s}.case-studies-page .f3{animation-delay:-2.6s}.case-studies-page .f4{animation-delay:-3.9s}@keyframes railrun{0%{opacity:0;transform:translateY(0)}10%{opacity:1}90%{opacity:1}to{opacity:0;transform:translateY(270px)}}.case-studies-page .pk{animation:3.4s cubic-bezier(.45,0,.3,1) infinite railrun}@keyframes dash{to{stroke-dashoffset:-24px}}.case-studies-page .flow{animation:1.1s linear infinite dash}@keyframes hop{0%{opacity:0;transform:translate(0)}15%{opacity:1}85%{opacity:1}to{opacity:0;transform:translate(120px)}}.case-studies-page .hop{animation:2.4s cubic-bezier(.45,0,.3,1) infinite hop}.case-studies-page .hop2{animation-delay:1.2s}@keyframes grow{0%{transform:scaleY(.3)}to{transform:scaleY(1)}}.case-studies-page .bar{transform-origin:bottom;animation:2.8s cubic-bezier(.2,.7,.2,1) infinite alternate grow}.case-studies-page .b2{animation-delay:.25s}.case-studies-page .b3{animation-delay:.5s}.case-studies-page .b4{animation-delay:.75s}.case-studies-page .b5{animation-delay:1s}@keyframes pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--color-success) 45%, transparent)}to{box-shadow:0 0 0 10px color-mix(in srgb, var(--color-success) 0%, transparent)}}.case-studies-page .pulse{animation:1.8s ease-out infinite pulse}.case-studies-page .lift{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}.case-studies-page .lift:hover{box-shadow:0 34px 50px -26px color-mix(in srgb, var(--color-navy) 35%, transparent);transform:translateY(-6px)}@keyframes drawx{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes drawy{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@supports (animation-timeline:view()){.case-studies-page .rv{animation:linear both rise;animation-timeline:view();animation-range:entry cover 28%}.case-studies-page .drawx{transform-origin:0;animation:linear both drawx;animation-timeline:view();animation-range:entry 10% cover 45%}.case-studies-page .drawy{transform-origin:top;animation:linear both drawy;animation-timeline:view();animation-range:entry 20% cover 70%}}.case-studies-page .ring{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-out infinite ringout}.case-studies-page .r2{animation-delay:1.2s}@keyframes ringout{0%{opacity:.9;transform:scale(.9)}to{opacity:0;transform:scale(2.1)}}.case-studies-page .eq{transform-box:fill-box;transform-origin:50%;animation:1.1s ease-in-out infinite alternate eqb}.case-studies-page .e2{animation-delay:.18s}.case-studies-page .e3{animation-delay:.36s}.case-studies-page .e4{animation-delay:.54s}@keyframes eqb{0%{transform:scaleY(.3)}to{transform:scaleY(1)}}.case-studies-page .scan{animation:3s ease-in-out infinite scanv}@keyframes scanv{0%,to{transform:translateY(0)}50%{transform:translateY(40px)}}.case-studies-page .cursor{animation:3.6s cubic-bezier(.45,0,.3,1) infinite cur}@keyframes cur{0%,to{transform:translate(58px,46px)}45%,70%{transform:translate(128px,86px)}}.case-studies-page .clk{transform-box:fill-box;transform-origin:50%;animation:3.6s ease-out infinite clk}@keyframes clk{0%,44%{opacity:0;transform:scale(0)}48%{opacity:.7}70%,to{opacity:0;transform:scale(2.2)}}.case-studies-page .dl{stroke-dasharray:220;animation:3.4s cubic-bezier(.45,0,.3,1) infinite drawline}@keyframes drawline{0%{stroke-dashoffset:220px}60%,to{stroke-dashoffset:0}}.case-studies-page .m1{animation:2.2s cubic-bezier(.45,0,.3,1) infinite mv1}.case-studies-page .m2{animation:2.2s cubic-bezier(.45,0,.3,1) 1.1s infinite mv2}.case-studies-page .m3{animation:2.2s cubic-bezier(.45,0,.3,1) .6s infinite mv3}.case-studies-page .m3b{animation-delay:1.7s}@keyframes mv1{0%{opacity:0;transform:translate(0)}15%,85%{opacity:1}to{opacity:0;transform:translate(64px,-32px)}}@keyframes mv2{0%{opacity:0;transform:translate(0)}15%,85%{opacity:1}to{opacity:0;transform:translate(64px,32px)}}@keyframes mv3{0%{opacity:0;transform:translate(0)}15%,85%{opacity:1}to{opacity:0;transform:translate(64px)}}.case-studies-page .spin{transform-box:fill-box;transform-origin:50%;animation:9s linear infinite spin}.case-studies-page .spinr{transform-box:fill-box;transform-origin:50%;animation:6s linear infinite reverse spin}@keyframes spin{to{transform:rotate(360deg)}}.case-studies-page .tune{animation:3.2s cubic-bezier(.45,0,.3,1) infinite alternate tune}.case-studies-page .t1{--dx:44px}.case-studies-page .t2{--dx:-30px;animation-delay:.5s}.case-studies-page .t3{--dx:22px;animation-delay:1s}@keyframes tune{0%{transform:translate(0)}to{transform:translateX(var(--dx))}}.case-studies-page .led{animation:1.6s steps(2,jump-none) infinite blink}.case-studies-page .l2{animation-delay:.4s}.case-studies-page .l3{animation-delay:.9s}@keyframes blink{0%,to{opacity:1}50%{opacity:.2}}.case-studies-page .pkx{animation:1.6s cubic-bezier(.45,0,.3,1) infinite pkx}@keyframes pkx{0%{opacity:0;transform:translate(0)}20%,80%{opacity:1}to{opacity:0;transform:translate(28px)}}.case-studies-page .srow .sk{transition:color .25s}.case-studies-page .srow:hover .sk{color:var(--color-navy)}.case-studies-page .cap{transition:transform .25s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .25s}.case-studies-page .cap:hover{box-shadow:0 10px 20px -14px color-mix(in srgb, var(--color-navy) 40%, transparent);transform:translateY(-2px)}.case-studies-page .g1 .cap:hover{border-color:var(--color-cat-backend)}.case-studies-page .g2 .cap:hover{border-color:var(--color-cat-db)}.case-studies-page .g3 .cap:hover{border-color:var(--color-cat-ml)}.case-studies-page .g4 .cap:hover{border-color:var(--color-cat-agents)}.case-studies-page .g5 .cap:hover{border-color:var(--color-cat-cloud)}.case-studies-page .neon{box-shadow:0 0 0 1px color-mix(in srgb, var(--color-indigo-soft) 25%, transparent), 0 0 22px -4px color-mix(in srgb, var(--color-indigo-soft) 55%, transparent), inset 0 0 24px -12px color-mix(in srgb, var(--color-lavender-strong) 45%, transparent);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .35s}.case-studies-page .neon:hover{box-shadow:0 0 0 1px color-mix(in srgb, var(--color-lavender-strong) 55%, transparent), 0 0 38px 0 color-mix(in srgb, var(--color-indigo-soft) 65%, transparent), inset 0 0 28px -10px color-mix(in srgb, var(--color-lavender-strong) 60%, transparent);transform:translateY(-6px);border-color:var(--color-lavender-strong)!important}@keyframes neonpulse{0%{box-shadow:0 0 0 1px color-mix(in srgb, var(--color-indigo-soft) 25%, transparent), 0 0 18px -6px color-mix(in srgb, var(--color-indigo-soft) 45%, transparent), inset 0 0 24px -12px color-mix(in srgb, var(--color-lavender-strong) 40%, transparent)}to{box-shadow:0 0 0 1px color-mix(in srgb, var(--color-lavender-strong) 45%, transparent), 0 0 36px -2px color-mix(in srgb, var(--color-indigo-soft) 70%, transparent), inset 0 0 28px -10px color-mix(in srgb, var(--color-lavender-strong) 55%, transparent)}}.case-studies-page .neonpulse{animation:3.4s ease-in-out infinite alternate neonpulse}.case-studies-page .neonpulse:hover{animation:none}.case-studies-page .neonbtn{box-shadow:0 0 16px -4px color-mix(in srgb, var(--color-lavender-strong) 60%, transparent);transition:box-shadow .3s,transform .3s}.case-studies-page .neonbtn:hover{box-shadow:0 0 28px 0 color-mix(in srgb, var(--color-lavender-strong) 75%, transparent);color:var(--color-white);transform:translateY(-2px)}.case-studies-page .fx{transform-box:fill-box;transform-origin:0;animation:4.8s cubic-bezier(.2,.7,.2,1) infinite fx}.case-studies-page .x2{animation-delay:.35s}.case-studies-page .x3{animation-delay:.7s}.case-studies-page .x4{animation-delay:1.05s}.case-studies-page .x5{animation-delay:1.4s}@keyframes fx{0%{opacity:0;transform:scaleX(0)}12%,82%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(1)}}.case-studies-page .st{animation:3.6s ease-in-out infinite st}.case-studies-page .s2{animation-delay:.6s}.case-studies-page .s3{animation-delay:1.2s}@keyframes st{0%,10%{opacity:.25}25%,85%{opacity:1}to{opacity:.25}}.case-studies-page .neonsec{box-shadow:0 0 60px 4px color-mix(in srgb, var(--color-indigo-soft) 16%, transparent), 0 0 140px 12px color-mix(in srgb, var(--color-indigo-soft) 7%, transparent);animation:5s ease-in-out infinite alternate neonsec}@keyframes neonsec{0%{box-shadow:0 0 50px 2px color-mix(in srgb, var(--color-indigo-soft) 12%, transparent), 0 0 120px 10px color-mix(in srgb, var(--color-indigo-soft) 5%, transparent)}to{box-shadow:0 0 70px 6px color-mix(in srgb, var(--color-indigo-soft) 20%, transparent), 0 0 160px 14px color-mix(in srgb, var(--color-indigo-soft) 8%, transparent)}}.case-studies-page .ptrack{transform-origin:0;animation:8s linear infinite ptrack}@keyframes ptrack{0%{opacity:1;transform:scaleX(0)}75%{transform:scaleX(1)}92%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(1)}}.case-studies-page .pcomet{animation:8s linear infinite pcomet}@keyframes pcomet{0%{opacity:1;left:0%}75%{left:100%}92%{opacity:1;left:100%}to{opacity:0;left:100%}}.case-studies-page .pnode{animation-duration:8s;animation-timing-function:linear;animation-iteration-count:infinite}.case-studies-page .pn0{animation-name:pn0}@keyframes pn0{0%{background:var(--color-white);border-color:var(--color-lavender);color:var(--color-muted);box-shadow:none;transform:scale(1)}2%{background:var(--color-indigo);border-color:var(--color-indigo);color:var(--color-white);box-shadow:0 0 0 10px color-mix(in srgb, var(--color-indigo) 18%, transparent);transform:scale(1.14)}6%,92%{background:var(--color-indigo);border-color:var(--color-indigo);color:var(--color-white);box-shadow:0 0 0 6px color-mix(in srgb, var(--color-indigo) 12%, transparent);transform:scale(1)}97%,to{background:var(--color-white);border-color:var(--color-lavender);color:var(--color-muted);box-shadow:none;transform:scale(1)}}.case-studies-page .pn1{animation-name:pn1}@keyframes pn1{0%,14.5%{background:var(--color-white);border-color:var(--color-lavender);color:var(--color-muted);box-shadow:none;transform:scale(1)}17%{background:var(--color-indigo);border-color:var(--color-indigo);color:var(--color-white);box-shadow:0 0 0 10px color-mix(in srgb, var(--color-indigo) 18%, transparent);transform:scale(1.14)}21%,92%{background:var(--color-indigo);border-color:var(--color-indigo);color:var(--color-white);box-shadow:0 0 0 6px color-mix(in srgb, var(--color-indigo) 12%, transparent);transform:scale(1)}97%,to{background:var(--color-white);border-color:var(--color-lavender);color:var(--color-muted);box-shadow:none;transform:scale(1)}}.case-studies-page .pn2{animation-name:pn2}@keyframes pn2{0%,29.5%{background:var(--color-white);border-color:var(--color-lavender);color:var(--color-muted);box-shadow:none;transform:scale(1)}32%{background:var(--color-indigo);border-color:var(--color-indigo);color:var(--color-white);box-shadow:0 0 0 10px color-mix(in srgb, var(--color-indigo) 18%, transparent);transform:scale(1.14)}36%,92%{background:var(--color-indigo);border-color:var(--color-indigo);color:var(--color-white);box-shadow:0 0 0 6px color-mix(in srgb, var(--color-indigo) 12%, transparent);transform:scale(1)}97%,to{background:var(--color-white);border-color:var(--color-lavender);color:var(--color-muted);box-shadow:none;transform:scale(1)}}.case-studies-page .pn3{animation-name:pn3}@keyframes pn3{0%,44.5%{background:var(--color-white);border-color:var(--color-lavender);color:var(--color-muted);box-shadow:none;transform:scale(1)}47%{background:var(--color-indigo);border-color:var(--color-indigo);color:var(--color-white);box-shadow:0 0 0 10px color-mix(in srgb, var(--color-indigo) 18%, transparent);transform:scale(1.14)}51%,92%{background:var(--color-indigo);border-color:var(--color-indigo);color:var(--color-white);box-shadow:0 0 0 6px color-mix(in srgb, var(--color-indigo) 12%, transparent);transform:scale(1)}97%,to{background:var(--color-white);border-color:var(--color-lavender);color:var(--color-muted);box-shadow:none;transform:scale(1)}}.case-studies-page .pn4{animation-name:pn4}@keyframes pn4{0%,59.5%{background:var(--color-white);border-color:var(--color-lavender);color:var(--color-muted);box-shadow:none;transform:scale(1)}62%{background:var(--color-indigo);border-color:var(--color-indigo);color:var(--color-white);box-shadow:0 0 0 10px color-mix(in srgb, var(--color-indigo) 18%, transparent);transform:scale(1.14)}66%,92%{background:var(--color-indigo);border-color:var(--color-indigo);color:var(--color-white);box-shadow:0 0 0 6px color-mix(in srgb, var(--color-indigo) 12%, transparent);transform:scale(1)}97%,to{background:var(--color-white);border-color:var(--color-lavender);color:var(--color-muted);box-shadow:none;transform:scale(1)}}.case-studies-page .pn5{animation-name:pn5}@keyframes pn5{0%,74.5%{background:var(--color-white);border-color:var(--color-lavender);color:var(--color-muted);box-shadow:none;transform:scale(1)}77%{background:var(--color-indigo);border-color:var(--color-indigo);color:var(--color-white);box-shadow:0 0 0 10px color-mix(in srgb, var(--color-indigo) 18%, transparent);transform:scale(1.14)}81%,92%{background:var(--color-indigo);border-color:var(--color-indigo);color:var(--color-white);box-shadow:0 0 0 6px color-mix(in srgb, var(--color-indigo) 12%, transparent);transform:scale(1)}97%,to{background:var(--color-white);border-color:var(--color-lavender);color:var(--color-muted);box-shadow:none;transform:scale(1)}}.case-studies-page .carbtn{transition:border-color .25s,transform .25s}.case-studies-page .carbtn:hover{border-color:var(--color-indigo);transform:translateY(-1px)}.case-studies-page .cfield{transition:border-color .25s,box-shadow .25s,background .25s}.case-studies-page .cfield:focus{border-color:var(--color-indigo);background:var(--color-white);box-shadow:0 0 0 4px color-mix(in srgb, var(--color-indigo) 12%, transparent)}.case-studies-page .cfield::placeholder{color:var(--color-muted)}.case-studies-page{scroll-behavior:smooth;scroll-padding-top:72px}.case-studies-page .secnav{transition:background .3s,box-shadow .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s}.case-studies-page .secnav .seclbl{opacity:0;pointer-events:none;transition:opacity .25s,transform .25s cubic-bezier(.2,.7,.2,1);transform:translate(-6px)}.case-studies-page .secnav:hover{background:color-mix(in srgb, var(--color-white) 88%, transparent);-webkit-backdrop-filter:blur(16px);box-shadow:0 18px 40px -20px color-mix(in srgb, var(--color-navy) 35%, transparent), 0 0 0 1px var(--color-border)}.case-studies-page .secnav:hover .seclbl{opacity:1;pointer-events:auto;transform:none}.case-studies-page .secitem:hover .seclbl{color:var(--color-indigo)!important}.case-studies-page .ex{animation:none}.case-studies-page .ex1{animation-name:ex1}.case-studies-page .ex2{animation-name:ex2}.case-studies-page .ex3{animation-name:ex3}.case-studies-page .ex4{animation-name:ex4}@keyframes ex1{0%{transform:translateY(0)}to{transform:translateY(-22px)}}@keyframes ex2{0%{transform:translateY(0)}to{transform:translateY(-8px)}}@keyframes ex3{0%{transform:translateY(0)}to{transform:translateY(6px)}}@keyframes ex4{0%{transform:translateY(0)}to{transform:translateY(18px)}}.case-studies-page .cb{animation:1.8s cubic-bezier(.45,0,.55,1) infinite alternate cbob}.case-studies-page .cb2{animation-delay:.45s}.case-studies-page .cb3{animation-delay:.9s}@keyframes cbob{0%{transform:translateY(0)}to{transform:translateY(-9px)}}.case-studies-page .cardglow{box-shadow:0 0 16px -8px color-mix(in srgb, var(--color-lavender-strong) 60%, transparent), 0 10px 22px -18px color-mix(in srgb, var(--color-navy) 25%, transparent)}.case-studies-page .cardglow:hover{box-shadow:0 0 22px -8px color-mix(in srgb, var(--color-lavender-strong) 80%, transparent), 0 20px 34px -22px color-mix(in srgb, var(--color-navy) 35%, transparent);border-color:var(--color-border-card-hover)!important}.case-studies-page .csl,.case-studies-page .csr{will-change:transform}@keyframes csinl{0%{opacity:0;transform:translate(-90px)}to{opacity:1;transform:none}}@keyframes csinr{0%{opacity:0;transform:translate(90px)}to{opacity:1;transform:none}}@keyframes csnode{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@supports (animation-timeline:view()){.case-studies-page .csl{animation:linear both csinl;animation-timeline:view();animation-range:entry 5% cover 38%}.case-studies-page .csr{animation:linear both csinr;animation-timeline:view();animation-range:entry 5% cover 38%}.case-studies-page .csnode{animation:linear both csnode;animation-timeline:view();animation-range:entry 20% cover 45%}}.case-studies-page .csbtn{transition:transform .25s,box-shadow .25s}.case-studies-page .csbtn:hover{box-shadow:0 12px 24px -12px color-mix(in srgb, var(--color-indigo) 60%, transparent);color:var(--color-white);transform:translateY(-2px)}@keyframes cue{0%,to{opacity:.6;transform:translateY(0)}50%{opacity:1;transform:translateY(6px)}}.case-studies-page .scrollcue{animation:1.8s ease-in-out infinite cue}.case-studies-page .clamp2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.case-studies-page .clamp1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.case-studies-page .csrow{border-radius:12px;transition:background .2s}.case-studies-page .csrow:hover{background:var(--color-lavender-wash)}.case-studies-page .csq::placeholder{color:var(--color-subtle)}.case-studies-page .cstool button:focus-visible,.case-studies-page .cstool a:focus-visible,.case-studies-page .csq:focus-visible{outline:2px solid var(--color-indigo-bright);outline-offset:2px}@media (prefers-reduced-motion:reduce){.case-studies-page *{transition:none!important;animation:none!important}}
