:root{--primary: #199aef;--primary-dark: #0f7fc9;--primary-darker: #0a5f99;--primary-light: #e6f4fd;--primary-lighter: #f2f9fe;--ink: #0b1c2c;--ink-soft: #33475b;--muted: #64748b;--line: #e4edf4;--bg: #ffffff;--bg-soft: #f6fafd;--dark-bg: #05101c;--dark-card: #0b1e30;--white: #ffffff;--radius: 14px;--radius-lg: 22px;--shadow-sm: 0 2px 10px rgba(11, 28, 44, .06);--shadow-md: 0 10px 34px rgba(11, 28, 44, .1);--shadow-lg: 0 24px 60px rgba(11, 28, 44, .16);--font-display: "Sora", sans-serif;--font-body: "Inter", sans-serif;--nav-h: 96px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea,select{font-family:inherit}h1,h2,h3,h4{font-family:var(--font-display);line-height:1.2}.container{width:min(1360px,94%);margin:0 auto}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--primary);border:1px solid var(--primary);border-radius:999px;padding:7px 18px;background:var(--white)}.eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--primary)}.section{padding:90px 0}.section-soft{background:var(--bg-soft)}.section-head{text-align:center;max-width:720px;margin:0 auto 54px}.section-head .eyebrow{margin-bottom:18px}.section-head h2{font-size:clamp(28px,4vw,40px);font-weight:700}.section-head p{color:var(--muted);margin-top:14px;font-size:16.5px}.btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;border-radius:999px;padding:13px 28px;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--primary);color:var(--white);box-shadow:0 8px 22px #199aef59}.btn-primary:hover{background:var(--primary-dark)}.btn-outline{border:1.5px solid var(--ink);color:var(--ink);background:transparent}.btn-outline:hover{border-color:var(--primary);color:var(--primary)}.btn-light{background:var(--white);color:var(--ink)}.btn-gradient{background:linear-gradient(120deg,var(--primary),#7c5cff);color:var(--white);box-shadow:0 8px 24px #199aef66}.navbar{position:sticky;top:0;z-index:200;height:var(--nav-h);display:flex;align-items:center;background:var(--primary);border-bottom:1px solid rgba(255,255,255,.15)}.navbar.on-dark{background:var(--primary);border-bottom-color:#ffffff26}.navbar .container{display:flex;align-items:center;gap:28px}.nav-logo{display:flex;align-items:center;gap:4px;font-family:var(--font-display);color:#fff}.nav-logo img{height:66px;width:66px;object-fit:contain;margin-right:-8px;background:none;border-radius:0;padding:0}.logo-stack{display:flex;flex-direction:column;line-height:1;text-align:left}.logo-name{font-size:27px;font-weight:700;letter-spacing:-.5px}.logo-tag{font-size:10.5px;font-weight:600;letter-spacing:.55px;margin-top:4px;opacity:.92}.on-dark .nav-logo{color:var(--white)}.nav-links{display:flex;align-items:center;gap:4px;margin-left:auto}.nav-links a,.nav-drop-btn{font-size:14.5px;font-weight:700;color:#fff;padding:9px 13px;border-radius:8px;display:inline-flex;align-items:center;gap:5px;transition:color .15s}.on-dark .nav-links a,.on-dark .nav-drop-btn{color:#fff}.nav-links a:hover,.nav-drop-btn:hover,.nav-links a.active{color:#ffffffbf}.nav-drop{position:relative}.nav-drop-btn .caret{font-size:10px;transition:transform .2s}.nav-drop.open .caret{transform:rotate(180deg)}.nav-mega{position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%);width:min(760px,90vw);background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:28px 30px;opacity:0;pointer-events:none;translate:0 8px;transition:opacity .2s ease,translate .2s ease}.nav-drop.open .nav-mega{opacity:1;pointer-events:auto;translate:0 0}.nav-mega h4{font-size:18px;margin-bottom:18px;color:var(--ink)}.nav-mega-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 26px}.nav-mega-item{display:flex;gap:13px;padding:11px 12px;border-radius:12px;transition:background .15s}.nav-mega-item:hover{background:var(--primary-lighter)}.nav-mega-item .ico{flex:0 0 40px;height:40px;display:grid;place-items:center;background:var(--primary-light);color:var(--primary);border-radius:10px;font-size:18px}.nav-mega-item strong{display:block;font-size:14.5px;color:var(--ink)}.nav-mega-item small{color:var(--muted);font-size:12.5px;line-height:1.45;display:block;margin-top:2px}.nav-build{font-weight:700;color:#fff!important}.navbar.theme-light .nav-build{color:var(--primary)!important}.nav-cta{margin-left:8px}.nav-cta .btn{padding:10px 22px;font-size:14px;background:transparent;border:1.5px solid #ffffff;color:#fff;box-shadow:none}.nav-cta .btn:hover{background:#fff;color:var(--primary)}.navbar.theme-light .nav-cta .btn{border-color:var(--primary);color:var(--primary);background:transparent}.navbar.theme-light .nav-cta .btn:hover,.nav-drawer .btn{background:var(--primary);color:#fff}.nav-burger{display:none;margin-left:auto;flex-direction:column;gap:5px;padding:8px}.nav-burger span{width:24px;height:2.5px;border-radius:2px;background:var(--ink);transition:.25s}.on-dark .nav-burger span{background:var(--white)}.nav-burger.open span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}.nav-burger.open span:nth-child(2){opacity:0}.nav-burger.open span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}.nav-drawer{display:none;position:fixed;inset:var(--nav-h) 0 0 0;background:var(--white);z-index:190;padding:24px 6%;overflow-y:auto}.nav-drawer.open{display:block}.nav-drawer a,.nav-drawer .drawer-group-btn{display:flex;justify-content:space-between;align-items:center;width:100%;padding:15px 4px;font-size:17px;font-weight:500;color:var(--ink);border-bottom:1px solid var(--line)}.drawer-sub{padding:6px 0 10px 16px}.drawer-sub a{font-size:15px;color:var(--muted);border-bottom:none;padding:9px 4px}.nav-drawer .btn{margin-top:22px;width:100%;justify-content:center}.hero{position:relative;min-height:calc(100vh - var(--nav-h));display:flex;flex-direction:column;justify-content:center;padding:80px 0 70px;text-align:center;background:radial-gradient(1000px 500px at 15% 0%,rgba(25,154,239,.14),transparent 60%),radial-gradient(900px 500px at 85% 10%,rgba(124,92,255,.1),transparent 60%),linear-gradient(180deg,#f4faff,#fff);overflow:hidden}.hero-grid-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(25,154,239,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(25,154,239,.05) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse at 50% 0%,black 30%,transparent 75%);mask-image:radial-gradient(ellipse at 50% 0%,black 30%,transparent 75%)}.hero .container{position:relative}.hero .eyebrow{margin-bottom:26px;background:#ffffffb3}.hero h1{font-size:clamp(34px,6vw,62px);font-weight:800;letter-spacing:-1px}.hero h1 .accent{background:linear-gradient(120deg,var(--primary),#7c5cff,#19c8ef,var(--primary));background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gradientFlow 6s ease infinite}@keyframes gradientFlow{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.hero h1 .sub-line{display:block;font-weight:600;font-size:.72em;margin-top:10px;color:var(--ink)}.hero p.lead{max-width:640px;margin:24px auto 0;color:var(--muted);font-size:17px}.hero .btn{margin-top:34px}.trust-row{margin-top:70px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.trust-item{padding:30px 22px 8px;border-left:1px solid var(--line);text-align:center}.trust-item:first-child{border-left:none}.trust-item .t-logo{height:52px;display:flex;align-items:center;justify-content:center;margin-bottom:14px}.trust-item p{font-size:13px;color:var(--ink-soft);line-height:1.6}.brand{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display)}.brand-goodfirm .gf-ico{width:34px;height:34px;border-radius:8px;background:linear-gradient(135deg,#f7941e,#f75c1e);color:#fff;font-weight:800;font-size:18px;display:inline-flex;align-items:center;justify-content:center}.brand-goodfirm .gf-txt{text-align:left;font-size:17px;color:#6b7280;line-height:1.1}.brand-goodfirm .gf-txt b{color:#f7941e}.brand-goodfirm .gf-txt small{display:block;font-size:9.5px;letter-spacing:.4px;color:#9ca3af}.brand-clutch .cl-badge{background:#17313b;color:#fff;font-weight:700;font-size:14px;letter-spacing:.5px;padding:10px 16px;border-radius:10px;border:2px solid #e2e8f0;box-shadow:0 3px 10px #17313b40;position:relative}.brand-clutch .cl-badge:after{content:"SOFTWARE DEVELOPERS";position:absolute;top:-7px;left:50%;transform:translate(-50%);background:#fff;color:#64748b;font-size:6.5px;font-weight:700;letter-spacing:.6px;padding:1px 5px;border-radius:3px;white-space:nowrap}.brand-upwork{font-size:24px;font-weight:500;color:#1d1d1d;letter-spacing:-.5px}.brand-upwork b{color:#14a800;font-weight:800}.brand-trustpilot{display:inline-flex;flex-direction:column;align-items:center;gap:5px;font-size:17px;font-weight:800;color:#191919}.brand-trustpilot .tp-star{color:#00b67a;font-size:19px;margin-right:2px}.brand-trustpilot .tp-stars{display:flex;gap:2px}.brand-trustpilot .tp-stars i{font-style:normal;width:18px;height:18px;background:#00b67a;color:#fff;font-size:12px;display:inline-flex;align-items:center;justify-content:center}.stats-strip{background:linear-gradient(120deg,var(--primary-darker),var(--primary));color:var(--white);padding:46px 0}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}.stat h3{font-size:clamp(28px,3.6vw,42px);font-weight:800}.stat p{opacity:.85;font-size:14px;margin-top:4px}.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:22px}.svc-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);padding:30px 26px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s}.svc-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);border-color:#199aef66}.svc-card .ico{width:52px;height:52px;display:grid;place-items:center;border-radius:14px;background:var(--primary-light);color:var(--primary);font-size:24px;margin-bottom:18px}.svc-card h3{font-size:18.5px;margin-bottom:10px}.svc-card p{color:var(--muted);font-size:14.5px}.svc-card .card-link{display:inline-flex;align-items:center;gap:6px;margin-top:16px;color:var(--primary);font-weight:600;font-size:14px}.value-card{background:var(--white);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--line);transition:transform .2s,box-shadow .2s}.value-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.value-card .v-visual{height:150px;display:grid;place-items:center;font-size:44px;color:var(--white)}.value-card .v-body{padding:20px 22px 24px}.value-card h3{font-size:17px;margin-bottom:8px}.value-card p{font-size:13.5px;color:var(--muted)}.faq-list{max-width:820px;margin:0 auto}.faq-item{border-bottom:1px solid var(--line)}.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:18px;text-align:left;padding:22px 6px;font-size:16px;font-weight:600;color:var(--ink);transition:color .15s}.faq-item.open .faq-q{color:var(--primary)}.faq-q .sign{font-size:20px;font-weight:400;color:var(--muted);flex:0 0 auto}.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}.faq-item.open .faq-a{max-height:300px}.faq-a p{color:var(--muted);font-size:14.5px;padding:0 6px 22px;max-width:92%}.contact-wrap{display:grid;grid-template-columns:1fr 1.15fr;gap:60px;align-items:start}.contact-intro h2{font-size:clamp(28px,3.6vw,38px);margin:20px 0 26px}.contact-intro .ratings{display:flex;gap:14px;margin-top:28px;flex-wrap:wrap}.rating-chip{display:flex;align-items:center;gap:12px;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:12px 18px;box-shadow:var(--shadow-sm)}.rating-chip .r-logo{font-size:22px}.rating-chip strong{font-size:14px;display:block}.rating-chip small{color:var(--muted);font-size:12px}.form-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--line);padding:34px 32px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{margin-bottom:18px}.field label{display:block;font-size:13.5px;font-weight:600;margin-bottom:7px}.field label .req{color:#e05252}.field input[type=text],.field input[type=email],.field input[type=tel],.field input[type=file],.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px 14px;font-size:14.5px;color:var(--ink);background:var(--bg-soft);transition:border-color .15s,box-shadow .15s}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #199aef26}.field textarea{min-height:110px;resize:vertical}.chip-group{display:flex;flex-wrap:wrap;gap:9px}.chip{border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-size:13px;color:var(--ink-soft);background:var(--white);transition:.15s}.chip.selected{background:var(--primary);border-color:var(--primary);color:var(--white)}.chip:hover:not(.selected){border-color:var(--primary);color:var(--primary)}.consent{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;color:var(--muted);margin:18px 0}.consent input{margin-top:3px;accent-color:var(--primary)}.consent a{color:var(--primary)}.form-success{background:#ecfbf1;border:1px solid #b9ecc9;color:#16794c;padding:14px 18px;border-radius:12px;font-size:14.5px;margin-bottom:16px}.form-error{color:#e05252;font-size:13px;margin-top:-10px;margin-bottom:14px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#05101ca6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:400;display:grid;place-items:center;padding:20px;animation:fadeIn .25s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lead-modal{width:min(880px,100%);max-height:92vh;overflow-y:auto;background:var(--white);border-radius:24px;display:grid;grid-template-columns:.9fr 1.1fr;overflow:hidden;position:relative;animation:popUp .3s cubic-bezier(.2,.9,.3,1.2)}@keyframes popUp{0%{transform:scale(.92) translateY(16px);opacity:0}to{transform:none;opacity:1}}.lead-modal .modal-left{background:linear-gradient(160deg,var(--primary) 0%,var(--primary-darker) 100%);color:var(--white);padding:42px 34px;display:flex;flex-direction:column;justify-content:space-between}.modal-left h2{font-size:28px;line-height:1.25}.modal-left p{margin-top:16px;font-size:14.5px;opacity:.92}.modal-trust{background:var(--white);color:var(--ink);border-radius:16px;padding:18px 20px;margin-top:36px}.modal-trust strong{font-size:14px;display:block;margin-bottom:12px}.modal-trust .badges{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--muted);font-weight:600}.lead-modal .modal-right{padding:38px 36px}.modal-close{position:absolute;top:14px;right:14px;width:36px;height:36px;border-radius:50%;background:var(--primary);color:var(--white);font-size:17px;display:grid;place-items:center;z-index:2;transition:background .15s}.modal-close:hover{background:var(--primary-dark)}.budget-row{display:flex;flex-wrap:wrap;gap:9px}.ai-page{background:var(--dark-bg);color:#dbe7f2}.ai-hero{padding:100px 0 80px}.ai-hero .container{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}.ai-hero h1{font-size:clamp(34px,5vw,54px);color:var(--white);font-weight:800}.ai-hero h1 .glow{background:linear-gradient(120deg,#4db8ff,#8e7bff);-webkit-background-clip:text;background-clip:text;color:transparent}.ai-hero p{margin-top:24px;font-size:15.5px;color:#9db4c8;max-width:540px}.ai-hero .btn{margin-top:32px}.ai-orb-wrap{display:grid;place-items:center}.ai-orb{width:min(380px,80vw);aspect-ratio:1;border-radius:50%;position:relative;background:radial-gradient(circle at 50% 50%,rgba(25,154,239,.28),transparent 60%);display:grid;place-items:center}.ai-orb:before,.ai-orb:after{content:"";position:absolute;top:8%;right:8%;bottom:8%;left:8%;border-radius:50%;border:1.5px solid rgba(77,184,255,.45);border-left-color:transparent;border-right-color:transparent;animation:spin 9s linear infinite}.ai-orb:after{top:20%;right:20%;bottom:20%;left:20%;animation-duration:6s;animation-direction:reverse;border-color:#8e7bff80;border-top-color:transparent;border-bottom-color:transparent}.ai-orb .core{width:42%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#4db8ff,var(--primary-darker) 70%);box-shadow:0 0 70px #199aef99;animation:pulse 3.5s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.07)}}.ai-section h2{text-align:center;font-size:clamp(26px,4vw,38px);color:var(--white)}.ai-section h2 .glow{background:linear-gradient(120deg,#4db8ff,#8e7bff);-webkit-background-clip:text;background-clip:text;color:transparent}.ai-cards{margin-top:50px;display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:22px}.ai-card{background:var(--dark-card);border:1px solid rgba(77,184,255,.16);border-radius:var(--radius-lg);padding:30px 26px;transition:transform .2s,border-color .2s}.ai-card:hover{transform:translateY(-5px);border-color:#4db8ff80}.ai-card .ico{font-size:26px;margin-bottom:16px;width:50px;height:50px;border-radius:12px;background:#199aef24;color:#4db8ff;display:grid;place-items:center}.ai-card h3{color:var(--white);font-size:18px;margin-bottom:10px}.ai-card p{font-size:14px;color:#9db4c8}.page-hero{padding:84px 0 70px;text-align:center;background:radial-gradient(800px 380px at 80% 0%,rgba(25,154,239,.13),transparent 60%),linear-gradient(180deg,#f4faff,#fff)}.page-hero .eyebrow{margin-bottom:20px}.page-hero h1{font-size:clamp(30px,4.6vw,46px);font-weight:800;max-width:840px;margin:0 auto}.page-hero p{color:var(--muted);max-width:640px;margin:18px auto 0;font-size:16px}.team-visual{margin:54px auto 0;width:min(700px,100%);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);background:linear-gradient(140deg,var(--primary-darker),var(--primary) 55%,#7c5cff);color:var(--white);padding:60px 30px;text-align:center}.team-visual .tv-logo{font-family:var(--font-display);font-weight:800;font-size:clamp(24px,4vw,36px);letter-spacing:4px}.team-visual p{color:#ffffffd9;margin-top:10px;font-size:14.5px}.team-visual .tv-avatars{display:flex;justify-content:center;margin-top:28px}.team-visual .tv-avatars span{width:46px;height:46px;border-radius:50%;background:#fff3;border:2px solid rgba(255,255,255,.65);display:grid;place-items:center;font-weight:700;margin-left:-10px;font-size:14px}.mv-wrap{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;align-items:start}.mv-left h2{font-size:clamp(28px,3.8vw,40px);margin-top:20px}.mv-left h2 .accent{color:var(--primary)}.mv-left p{color:var(--muted);margin-top:16px}.mv-item{display:flex;gap:18px;padding:22px 0;border-bottom:1px solid var(--line)}.mv-item:last-child{border-bottom:none}.mv-item .ico{flex:0 0 46px;height:46px;border-radius:50%;border:1.5px solid var(--primary);color:var(--primary);display:grid;place-items:center;font-size:20px}.mv-item h3{font-size:18px;margin-bottom:8px}.mv-item p{color:var(--muted);font-size:14.5px}.blog-hero{position:relative;padding:110px 0;text-align:center;color:var(--white);background:linear-gradient(#05101cc7,#05101cc7),repeating-linear-gradient(45deg,#10293f 0,#10293f 42px,#0b1e30 42px,#0b1e30 84px)}.blog-hero h1{font-size:clamp(30px,4.6vw,46px);max-width:800px;margin:0 auto}.blog-hero .btn{margin-top:30px}.featured-post{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:40px}.featured-post h2{font-size:clamp(22px,3vw,30px);margin-bottom:14px}.featured-post p{color:var(--muted);font-size:15px}.featured-post .btn{margin-top:24px}.post-visual{border-radius:16px;min-height:230px;display:grid;place-items:center;font-size:54px;color:var(--white)}.pv-1{background:linear-gradient(140deg,#7c5cff,var(--primary))}.pv-2{background:linear-gradient(140deg,var(--primary),#23c4a6)}.pv-3{background:linear-gradient(140deg,#ff8a5c,var(--primary))}.pv-4{background:linear-gradient(140deg,#23c4a6,#7c5cff)}.blog-cols{display:grid;grid-template-columns:1.3fr .9fr;gap:60px;margin-top:70px}.blog-cols h2{font-size:24px;margin-bottom:26px}.post-card{display:flex;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}.post-card .post-thumb{flex:0 0 92px;height:76px;border-radius:12px;display:grid;place-items:center;font-size:26px;color:var(--white)}.post-card h3{font-size:16px;line-height:1.4}.post-card h3 a:hover{color:var(--primary)}.post-card small{color:var(--muted);font-size:12.5px;display:block;margin-top:6px}.popular-item{display:flex;gap:16px;padding:15px 0;border-bottom:1px solid var(--line);align-items:baseline}.popular-item .num{font-family:var(--font-display);font-weight:800;font-size:22px;color:var(--primary);opacity:.55}.popular-item h3{font-size:15px;line-height:1.45;font-weight:600}.popular-item h3 a:hover{color:var(--primary)}.case-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}.case-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.case-card .case-visual{height:170px;display:grid;place-items:center;font-size:46px;color:var(--white)}.case-card .case-body{padding:24px;flex:1;display:flex;flex-direction:column}.case-card .tag{align-self:flex-start;font-size:11.5px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--primary);background:var(--primary-light);padding:5px 12px;border-radius:999px;margin-bottom:12px}.case-card h3{font-size:18px;margin-bottom:10px}.case-card p{color:var(--muted);font-size:14px;flex:1}.case-card .result{margin-top:16px;font-weight:700;color:var(--primary-darker);font-size:14px}.cta-band{background:radial-gradient(700px 300px at 85% 20%,rgba(255,255,255,.16),transparent 60%),linear-gradient(120deg,var(--primary-darker),var(--primary));border-radius:var(--radius-lg);color:var(--white);padding:60px 50px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}.cta-band h2{font-size:clamp(24px,3.4vw,34px);max-width:560px}.cta-band p{opacity:.9;margin-top:10px}.footer{background:var(--primary);color:#eaf5fd;padding:76px 0 0}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr 1.4fr;gap:46px}.footer h4{color:var(--white);font-size:15px;margin-bottom:20px}.footer ul{list-style:none}.footer li{margin-bottom:11px}.footer li a{font-size:14px;color:#ffffffbf;transition:color .15s}.footer li a:hover{color:#fff}.footer .newsletter{margin-top:34px}.newsletter-form{display:flex;margin-top:14px;background:var(--dark-card);border:1px solid rgba(255,255,255,.1);border-radius:999px;overflow:hidden;padding:4px}.newsletter-form input{flex:1;background:transparent;border:none;color:var(--white);padding:10px 16px;font-size:14px}.newsletter-form input:focus{outline:none}.newsletter-form .btn{padding:10px 22px;font-size:13.5px}.footer-talk h3{color:var(--white);font-size:22px;margin-bottom:20px}.footer-talk .btn-row{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:30px}.loc-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}.loc-card{background:var(--dark-card);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:18px;font-size:13px}.loc-card .pin{color:var(--primary);font-size:18px;margin-bottom:8px}.loc-card strong{color:var(--white);display:block;margin-bottom:6px}.loc-card .tel{color:var(--primary);font-weight:600;margin-top:8px;display:block}.footer-bottom{margin-top:64px;border-top:1px solid rgba(255,255,255,.08);padding:24px 0;text-align:center;font-size:13px;color:#fff}.footer-bottom .wordmark{font-family:var(--font-display);font-weight:800;font-size:clamp(40px,8vw,84px);letter-spacing:6px;color:#ffffff0f;line-height:1;margin-bottom:24px;-webkit-user-select:none;user-select:none}.chat-fab{position:fixed;right:24px;bottom:24px;width:60px;height:60px;border-radius:50%;background:var(--white);color:var(--primary);font-size:26px;display:grid;place-items:center;border:2px solid rgba(25,154,239,.35);box-shadow:0 12px 30px #0b1c2c4d;z-index:300;transition:transform .2s}.chat-fab:hover{transform:scale(1.08)}.chat-window{position:fixed;right:24px;bottom:96px;width:min(380px,calc(100vw - 32px));height:min(540px,calc(100vh - 130px));background:var(--white);border-radius:20px;box-shadow:var(--shadow-lg);border:1px solid var(--line);display:flex;flex-direction:column;overflow:hidden;z-index:300;animation:popUp .25s ease}.chat-head{background:linear-gradient(120deg,var(--primary-darker),var(--primary));color:var(--white);padding:16px 18px;display:flex;align-items:center;gap:12px}.chat-head .bot-av{width:38px;height:38px;border-radius:50%;background:#fff3;display:grid;place-items:center;font-size:18px}.chat-head strong{font-size:15px;display:block}.chat-head small{font-size:12px;opacity:.85}.chat-head .chat-min{margin-left:auto;color:var(--white);font-size:18px;opacity:.9}.chat-body{flex:1;overflow-y:auto;padding:18px 16px;background:var(--bg-soft);display:flex;flex-direction:column;gap:12px}.msg{max-width:82%;padding:11px 15px;border-radius:16px;font-size:13.8px;line-height:1.5;white-space:pre-wrap}.msg.bot{background:var(--white);border:1px solid var(--line);border-bottom-left-radius:5px;align-self:flex-start}.msg.user{background:var(--primary);color:var(--white);border-bottom-right-radius:5px;align-self:flex-end}.msg.escalated{border-color:#f5c26b;background:#fff8ec}.msg .esc-note{display:block;margin-top:8px;font-size:12px;color:#a06a12;font-weight:600}.chat-typing{display:inline-flex;gap:4px;padding:12px 16px}.chat-typing span{width:7px;height:7px;border-radius:50%;background:#9db4c8;animation:blink 1.2s infinite}.chat-typing span:nth-child(2){animation-delay:.2s}.chat-typing span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:.25}40%{opacity:1}}.chat-quick{display:flex;flex-wrap:wrap;gap:7px;padding:0 16px 10px;background:var(--bg-soft)}.chat-quick button{font-size:12px;border:1px solid var(--primary);color:var(--primary);border-radius:999px;padding:6px 13px;background:var(--white);transition:.15s}.chat-quick button:hover{background:var(--primary);color:var(--white)}.chat-input{display:flex;gap:10px;padding:13px 14px;border-top:1px solid var(--line);background:var(--white)}.chat-input input{flex:1;border:1px solid var(--line);border-radius:999px;padding:11px 17px;font-size:14px}.chat-input input:focus{outline:none;border-color:var(--primary)}.chat-input button{width:44px;height:44px;border-radius:50%;background:var(--primary);color:var(--white);font-size:17px;flex:0 0 auto}.reveal{opacity:0;transition:opacity .55s ease,transform .55s ease;will-change:opacity,transform}.reveal.from-down{transform:translateY(34px)}.reveal.from-up{transform:translateY(-34px)}.reveal.visible{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){*{animation-duration:1ms!important;transition-duration:1ms!important}.reveal{opacity:1;transform:none}}@media (max-width: 1024px){.nav-links{display:none}.nav-burger{display:flex}.trust-row{grid-template-columns:1fr 1fr}.trust-item:nth-child(3){border-left:none}.contact-wrap,.mv-wrap,.ai-hero .container{grid-template-columns:1fr;gap:44px}.blog-cols{grid-template-columns:1fr;gap:50px}.footer-grid{grid-template-columns:1fr 1fr}.featured-post,.lead-modal{grid-template-columns:1fr}.lead-modal .modal-left{display:none}}@media (max-width: 640px){.section{padding:64px 0}.hero{padding:76px 0 60px}.stats-grid{grid-template-columns:1fr 1fr;gap:28px}.trust-row{grid-template-columns:1fr}.trust-item{border-left:none;padding:20px 4px 4px}.form-row{grid-template-columns:1fr}.cta-band{padding:44px 28px}.loc-cards,.footer-grid{grid-template-columns:1fr}.lead-modal .modal-right{padding:30px 22px}}.orb{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;pointer-events:none;animation:orbFloat 14s ease-in-out infinite}.orb-1{width:420px;height:420px;top:-120px;left:-100px;background:radial-gradient(circle,rgba(25,154,239,.5),transparent 70%)}.orb-2{width:360px;height:360px;top:10%;right:-120px;background:radial-gradient(circle,rgba(124,92,255,.4),transparent 70%);animation-delay:-4s;animation-duration:18s}.orb-3{width:300px;height:300px;bottom:-80px;left:30%;background:radial-gradient(circle,rgba(25,200,239,.35),transparent 70%);animation-delay:-8s;animation-duration:16s}@keyframes orbFloat{0%,to{transform:translate(0) scale(1)}33%{transform:translate(40px,-30px) scale(1.08)}66%{transform:translate(-30px,25px) scale(.95)}}.marquee-band{background:#fbfdff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0;overflow:hidden;position:relative}.marquee-band:before,.marquee-band:after{content:"";position:absolute;top:0;bottom:0;width:120px;z-index:2;pointer-events:none}.marquee-band:before{left:0;background:linear-gradient(90deg,#fbfdff,transparent)}.marquee-band:after{right:0;background:linear-gradient(270deg,#fbfdff,transparent)}.marquee-track{display:flex;gap:72px;width:max-content;animation:marqueeScroll 32s linear infinite}.marquee-band:hover .marquee-track{animation-play-state:paused}.marquee-item{display:flex;align-items:center;gap:12px;color:var(--ink-soft);font-family:var(--font-body);font-weight:600;font-size:14.5px;white-space:nowrap}.marquee-item .m-ico{width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow-sm);font-size:17px}@keyframes marqueeScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.card-hover,.svc-card,.ind-card,.case-card,.value-card{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.card-hover:hover,.svc-card:hover,.ind-card:hover,.case-card:hover,.value-card:hover{transform:translateY(-8px);box-shadow:0 22px 50px #199aef2e;border-color:#199aef73}.btn{position:relative;overflow:hidden}.btn:after{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.45),transparent);transform:skew(-20deg);transition:left .55s ease}.btn:hover:after{left:130%}.live-dot{width:9px;height:9px;border-radius:50%;background:#22c55e;position:relative;display:inline-block}.live-dot:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;border:2px solid #22c55e;opacity:.6;animation:pulseRing 1.6s ease-out infinite}@keyframes pulseRing{0%{transform:scale(.6);opacity:.7}to{transform:scale(1.6);opacity:0}}.stats-strip{background:linear-gradient(120deg,var(--primary-darker),var(--primary),#7c5cff,var(--primary-darker));background-size:300% 100%;animation:gradientFlow 12s ease infinite}@media (prefers-reduced-motion: reduce){.orb,.marquee-track,.hero h1 .accent,.stats-strip,.live-dot:after{animation:none!important}}.navbar{transition:background .35s ease,border-color .35s ease}.navbar.theme-light{background:#fffffff5;border-bottom-color:var(--line);box-shadow:0 4px 20px #0b1c2c0f}.navbar.theme-light .nav-links a,.navbar.theme-light .nav-drop-btn,.navbar.theme-light .nav-logo{color:var(--primary)}.navbar.theme-light .nav-logo img{content:url(/vcodify-logo-blue.png)}.navbar.theme-light .nav-links a:hover,.navbar.theme-light .nav-drop-btn:hover,.navbar.theme-light .nav-links a.active{color:var(--primary)}.navbar.theme-light .btn-light{background:var(--primary);color:var(--white)}.navbar.theme-dark{background:#05101c;border-bottom-color:#ffffff1a}.hero-media{margin:44px auto 0;max-width:min(860px,92%);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--line)}.tech-head{display:grid;grid-template-columns:1fr 1.2fr;gap:48px;align-items:center;margin-bottom:48px}.tech-title{font-size:clamp(32px,4.4vw,48px);font-weight:800;color:var(--primary-darker);margin-top:8px}.tech-desc{color:var(--ink-soft);font-size:15.5px;line-height:1.75}.tech-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:22px}.tech-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:26px 14px 18px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px;transition:transform .28s ease,box-shadow .28s ease}.tech-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}.tech-logo{min-height:46px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--font-display);font-size:19px;line-height:1.05;letter-spacing:-.3px}.tech-logo small{font-size:8.5px;color:var(--muted);font-weight:600;letter-spacing:.4px;margin-top:3px}.tech-name{font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--ink-soft)}.section-sub{color:var(--muted);font-size:15px;margin-top:12px}.fb-marquee{overflow:hidden;position:relative;padding:8px 0 4px}.fb-marquee:before,.fb-marquee:after{content:"";position:absolute;top:0;bottom:0;width:140px;z-index:2;pointer-events:none}.fb-marquee:before{left:0;background:linear-gradient(90deg,var(--bg-soft),transparent)}.fb-marquee:after{right:0;background:linear-gradient(270deg,var(--bg-soft),transparent)}.fb-track{display:flex;gap:26px;width:max-content;animation:marqueeScroll 46s linear infinite}.fb-marquee:hover .fb-track{animation-play-state:paused}.fb-card{width:390px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:24px 26px;transition:box-shadow .25s ease,border-color .25s ease}.fb-card:hover{box-shadow:var(--shadow-md);border-color:#199aef66}.fb-card header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.fb-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--primary),#7c5cff);color:var(--white);font-weight:800;font-size:18px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display)}.fb-who{display:flex;flex-direction:column}.fb-who strong{font-size:15px;color:var(--ink)}.fb-who small{font-size:12px;color:var(--muted)}.fb-platform{margin-left:auto;font-size:16px;font-weight:500;color:#1d1d1d}.fb-platform b{color:#14a800;font-weight:800}.fb-stars{color:#14a800;letter-spacing:2px;font-size:14px;margin-bottom:10px}.fb-card p{font-size:14px;color:var(--ink-soft);line-height:1.65;font-style:italic}@media (max-width: 1024px){.tech-grid{grid-template-columns:repeat(3,1fr)}.tech-head{grid-template-columns:1fr;gap:18px}}@media (max-width: 640px){.tech-grid{grid-template-columns:repeat(2,1fr);gap:14px}.fb-card{width:320px}}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.team-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:0 0 22px;text-align:center;overflow:hidden;transition:transform .28s ease,box-shadow .28s ease}.team-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}.tm-photo{height:170px;display:flex;align-items:flex-end;justify-content:center}.tm-photo svg{width:130px;height:130px}.team-card h3{font-size:17px;margin:16px 0 2px}.tm-role{color:var(--primary);font-size:12.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase}.team-card p{color:var(--muted);font-size:13.5px;padding:10px 18px 0;line-height:1.55}.map-wrap{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-md)}.map-label{background:var(--primary);color:var(--white);font-weight:600;font-size:14px;padding:12px 18px}.map-wrap iframe{width:100%;height:420px;border:0;display:block}@media (max-width: 1024px){.team-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.team-grid{grid-template-columns:1fr}}.glance-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:26px}.glance-grid div{background:#ffffff24;border:1px solid rgba(255,255,255,.25);border-radius:12px;padding:14px 10px}.glance-grid strong{display:block;font-family:var(--font-display);font-size:24px}.glance-grid span{font-size:12px;opacity:.9}.timeline{position:relative;max-width:980px;margin:0 auto;padding:10px 0}.timeline:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:3px;transform:translate(-50%);background:linear-gradient(180deg,var(--primary),#7c5cff);border-radius:3px}.tl-item{position:relative;width:50%;padding:18px 44px}.tl-item.left{left:0;text-align:right}.tl-item.right{left:50%;text-align:left}.tl-item:before{content:"";position:absolute;top:34px;width:16px;height:16px;border-radius:50%;background:var(--white);border:4px solid var(--primary);box-shadow:0 0 0 5px #199aef2e}.tl-item.left:before{right:-8px}.tl-item.right:before{left:-8px}.tl-card{display:inline-block;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:20px 22px;max-width:380px;text-align:left;transition:transform .25s ease,box-shadow .25s ease}.tl-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.tl-year{display:inline-block;background:linear-gradient(120deg,var(--primary),#7c5cff);color:var(--white);font-family:var(--font-display);font-weight:700;font-size:13px;padding:4px 12px;border-radius:20px;margin-bottom:10px}.tl-card h3{font-size:17px;margin-bottom:6px}.tl-card p{font-size:13.5px;color:var(--muted);line-height:1.6}.footer-map-row{display:grid;grid-template-columns:1fr 1.4fr;gap:40px;margin-top:50px;align-items:start}.footer-map{border-radius:var(--radius);overflow:hidden;border:1px solid rgba(255,255,255,.25);box-shadow:0 14px 34px #00000040}.footer-map iframe{width:100%;height:300px;border:0;display:block}.newsletter-error{display:block;margin-top:8px;color:#ffe08a;font-size:12.5px}.legal-body{max-width:860px}.legal-body h2{font-size:20px;margin:30px 0 10px;color:var(--primary-darker)}.legal-body p{color:var(--ink-soft);font-size:15px;line-height:1.8}.svc-highlight{border-color:var(--primary)!important;box-shadow:0 0 0 4px #199aef40,var(--shadow-md)!important;transition:box-shadow .3s ease}@media (max-width: 900px){.timeline:before{left:10px}.tl-item,.tl-item.left,.tl-item.right{width:100%;left:0;text-align:left;padding:14px 0 14px 40px}.tl-item.left:before,.tl-item.right:before{left:2px;right:auto}.footer-map-row{grid-template-columns:1fr}}.cards-grid.grid-3{grid-template-columns:repeat(3,1fr)}@media (max-width: 1024px){.cards-grid.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.cards-grid.grid-3{grid-template-columns:1fr}}.chat-lead-form{display:flex;flex-direction:column;gap:8px;margin-top:12px}.chat-lead-form input,.chat-lead-form textarea{border:1px solid var(--line);border-radius:10px;padding:9px 12px;font:inherit;font-size:13.5px;resize:none}.chat-lead-form input:focus,.chat-lead-form textarea:focus{outline:2px solid rgba(25,154,239,.35);border-color:var(--primary)}.chat-lead-form .btn{padding:9px 14px;font-size:13.5px}.chat-lead-err{color:#d64545;font-size:12px}.hero-watermark{position:absolute;right:-4%;top:50%;width:min(560px,60vw);transform:translateY(-50%) rotate(-8deg);opacity:.07;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:0;animation:watermarkFloat 16s ease-in-out infinite}.hero .container{position:relative;z-index:1}@keyframes watermarkFloat{0%,to{transform:translateY(-50%) rotate(-8deg)}50%{transform:translateY(-46%) rotate(-5deg)}}.tech-logo svg{display:block;margin:0 auto 6px}html,body{overflow-x:hidden}.hero,.marquee-band,.fb-marquee,.cta-band{overflow:hidden}img,iframe,video{max-width:100%}@media (hover: none) and (pointer: coarse){.btn{min-height:46px}.btn:after{display:none}.card-hover:hover,.svc-card:hover,.ind-card:hover,.tech-card:hover,.team-card:hover,.tl-card:hover{transform:none}}@media (max-width: 1024px){.container{width:min(1360px,92%)}.hero{min-height:auto;padding:72px 0 60px}.hero-watermark{width:55vw;right:-12%;opacity:.06}.tech-head{grid-template-columns:1fr;gap:18px}.tech-grid{grid-template-columns:repeat(4,1fr);gap:16px}.footer-map-row{grid-template-columns:1fr;gap:26px}.footer-map iframe{height:260px}.map-wrap iframe{height:340px}.glance-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){:root{--nav-h: 76px}.nav-logo img{height:46px;width:46px}.logo-name{font-size:21px}.logo-tag{font-size:9px}.nav-cta .btn{padding:8px 14px;font-size:13px}.hero h1{font-size:clamp(30px,8.5vw,44px);letter-spacing:-.5px}.hero-sub{font-size:15.5px}.hero-watermark{width:70vw;right:-20%;top:40%}.orb{filter:blur(40px);opacity:.4}.orb-1,.orb-2,.orb-3{width:240px;height:240px}.section-head h2,.tech-title{font-size:clamp(26px,6.5vw,34px)}.tech-grid{grid-template-columns:repeat(3,1fr);gap:12px}.tech-card{padding:18px 8px 14px}.tech-logo{font-size:15px;min-height:40px}.tech-name{font-size:9.5px;letter-spacing:.6px}.marquee-band{padding:18px 0}.marquee-track{gap:40px;animation-duration:24s}.marquee-band:before,.marquee-band:after,.fb-marquee:before,.fb-marquee:after{width:40px}.fb-card{width:300px;padding:18px}.fb-track{gap:16px;animation-duration:38s}.timeline:before{left:10px}.tl-item,.tl-item.left,.tl-item.right{width:100%;left:0;text-align:left;padding:12px 0 12px 36px}.tl-item.left:before,.tl-item.right:before{left:2px;right:auto}.tl-card{max-width:100%;display:block}.team-visual{padding:30px 22px}.footer{padding-top:56px}.footer-talk h3{font-size:19px}.footer-bottom .wordmark{font-size:clamp(28px,11vw,64px);letter-spacing:0}}@media (max-width: 640px){.hero{padding:56px 0 48px}.hero-media{margin-top:30px}.stats-grid{gap:20px}.stat-num,.stats-grid strong{font-size:30px}.tech-grid{grid-template-columns:repeat(2,1fr)}.glance-grid{gap:10px}.glance-grid strong{font-size:20px}.fb-card{width:260px}.section-sub{font-size:14px}.legal-body h2{font-size:18px}.btn-row{flex-direction:column}.btn-row .btn{width:100%;justify-content:center}.newsletter-form{flex-direction:column}.newsletter-form .btn{width:100%}.map-label{font-size:13px}.chat-fab{right:14px;bottom:14px;width:54px;height:54px;font-size:22px}.chat-window{right:8px;left:8px;bottom:78px;width:auto;height:min(560px,calc(100vh - 100px));border-radius:16px}.chat-quick{flex-wrap:wrap}.chat-quick button{font-size:12px}.lead-modal{width:calc(100vw - 24px);max-height:calc(100vh - 24px);overflow-y:auto}.contact-wrap{gap:32px}.trust-item .t-logo{height:44px}}@media (max-width: 400px){.logo-tag{display:none}.logo-name{font-size:19px}.nav-logo img{height:40px;width:40px}.nav-cta .btn{padding:7px 11px;font-size:12px}.tech-grid{gap:10px}.stats-grid{grid-template-columns:1fr 1fr}}.tech-img{height:34px;max-width:110px;object-fit:contain}@media (max-width: 768px){.tech-img{height:28px}}
